如何从浏览器启动Browserified脚本

时间:2014-11-09 17:47:46

标签: javascript node.js browserify

我浏览了一个获取值并返回一个新模块的模块。

原始的.js文件是:

 module.exports = function (term) {
      return term + ' blabla';
 }

如果我想从Node.Js调用它,我只需将其包含在

var foo = require('./my-file.js');
foo('no'); // returns 'no blabla'

但如果我在<script src="/javascripts/new-file.js"></script>中包含browserify生成的文件,如何从浏览器中调用此功能?

谢谢!

2 个答案:

答案 0 :(得分:1)

您希望将--standalone标志用于browserify。来自文档:

  

为提供的导出名称生成UMD包。此捆绑包与其他模块系统一起使用,如果没有找到模块系统,则将名称设置为全局窗口。

因此,如果您使用--standalone标志,

browserify --standalone my_global_name my-file.js > new-file.js

您可以使用 window.my_global_name 属性访问您的功能。

答案 1 :(得分:0)

您需要使用-r标志进行编译,将其设置为公开要求。

browserify -r my-file.js > new-file.js

然后,在您的脚本中,您应该能够:

var foo = require('./my-file.js');
foo('no'); // returns 'no blabla'

有关详细信息,请参阅the documentation