首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Browserify外部要求使用Grunt-Browserify

Browserify外部要求使用Grunt-Browserify
EN

Stack Overflow用户
提问于 2014-08-31 03:16:11
回答 1查看 1.9K关注 0票数 1

external requires上的Browserify文档部分展示了如何使捆绑包中的模块可用于全局环境:

代码语言:javascript
复制
browserify -r through -r duplexer -r ./my-file.js:my-module > bundle.js

但是我在配置Grunt-Browserify时遇到了问题。

-r标志似乎对应于Grunt-Browserify中的require选项,但是docs description for this option没有提到任何外部请求或导出require()函数。

在我的tried文件中,我尝试将require选项设置为我需要公开的模块(顺便说一下,它已经在包中了):

代码语言:javascript
复制
options: {
  require: ['./dev/js/foomod.js'],
}

然后在我的页面脚本中,我尝试require()模块,如文档所示:

代码语言:javascript
复制
<script>
  var Foomod = require('./foomod.js');
  Foomod.init({foo: 'bar'});
</script>

但这会记录错误require is not defined

我的目标是调用模块的init()方法,这样我就可以传递运行时数据,而不需要将其放入window全局变量中。

EN

回答 1

Stack Overflow用户

发布于 2014-09-09 09:55:01

使用browserify版本5.11.1和grunt-browserify版本3.0.1,我已经成功地实现了类似的设置:

代码语言:javascript
复制
options:{
  preBundleCB: function (b) {
    b.require("./dev/js/foomod.js",{expose: 'foomod'});
  }
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25585903

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档