如何将 npm 模块编译成浏览器脚本?
How to compile a npm module into a browser script?
我想自定义 Parse SDK。他们通过 npm module 提供源代码,这使得它可以在节点环境中使用。
我怎样才能将这个节点模块编译成一个独立的 parse.js
脚本,它将 运行 就像在浏览器上一样?
我尝试将 browserify
用作
browserify ./parse -o parse.js
但是它吐出的 parse.js
相当大并且仍然包含节点 remanents:process
和 require
命令。虽然它在浏览器上执行没有任何错误,但浏览器找不到 Parse
定义。
据我所知,Parse-module 不会将自己暴露为浏览器全局。您应该有一个文件,例如 app.js
,其中包含您的定义并使用它来要求 Parse
模块。
例如:
//app.js
var Parse = require("parse");
console.log(Parse)
捆绑它(捆绑包将包含您的 app.js 和 parse
-模块的内容:
browserify ./app.js -o app.bundle.js
并将捆绑文件包含到您的 HTML
文件中
<script src="app.bundle.js"
打开 HTML
文件后,您应该会在控制台中看到 Parse
对象。
找到将parse npm模块编译成浏览器脚本的正确方法是使用:
browserify path/to/npm/parse --standalone parse > parse-browser.js
对于任何其他脚本,它应该是:
browserify path_to_module --standalone global_name_to_expose > output.js
此外,由于解析节点模块有很多节点代码,我建议人们使用envify followed by uglify来使他们的代码更优化。
我想自定义 Parse SDK。他们通过 npm module 提供源代码,这使得它可以在节点环境中使用。
我怎样才能将这个节点模块编译成一个独立的 parse.js
脚本,它将 运行 就像在浏览器上一样?
我尝试将 browserify
用作
browserify ./parse -o parse.js
但是它吐出的 parse.js
相当大并且仍然包含节点 remanents:process
和 require
命令。虽然它在浏览器上执行没有任何错误,但浏览器找不到 Parse
定义。
据我所知,Parse-module 不会将自己暴露为浏览器全局。您应该有一个文件,例如 app.js
,其中包含您的定义并使用它来要求 Parse
模块。
例如:
//app.js
var Parse = require("parse");
console.log(Parse)
捆绑它(捆绑包将包含您的 app.js 和 parse
-模块的内容:
browserify ./app.js -o app.bundle.js
并将捆绑文件包含到您的 HTML
文件中
<script src="app.bundle.js"
打开 HTML
文件后,您应该会在控制台中看到 Parse
对象。
找到将parse npm模块编译成浏览器脚本的正确方法是使用:
browserify path/to/npm/parse --standalone parse > parse-browser.js
对于任何其他脚本,它应该是:
browserify path_to_module --standalone global_name_to_expose > output.js
此外,由于解析节点模块有很多节点代码,我建议人们使用envify followed by uglify来使他们的代码更优化。