我正在尝试将我的库捆绑到可以从脚本标记加载的.js
文件中。我想让我的库在浏览器控制台中的变量下可用(换句话说,我想将它导出到window
对象中)。我怎么能在browserify中做到这一点?
这是我现有的grunt-browserify配置:
browserify: {
options: {
watch: "on",
banner: "<%= banner %>",
browserifyOptions: {
insertGlobalVars: "on",
noBuiltins: true,
detectGlobals: false
}
},
dist: {
files: {
'dist/json-schema-faker.js': ['lib/index.js']
}
}
目前我无法使用外部包中的捆绑库。
我知道browserify支持External requires,而不是
var jsf = require('json-schema-faker');
jsf.doSomething();
我更愿意这样做:
jsf.doSomething();
直接(以便将jsf
分配给window
将是自动的)。怎么做,浏览器在这个问题上有什么可能性?
答案 0 :(得分:-1)
在浏览器化的代码中,您可以访问普通的window
变量,并且为了与Node的兼容性,它也被别名为global
。因此,您可以将其添加到代码的末尾:
global.jsf = jsf;
如果您不希望json-schema-faker
总是自行导出,请将其包装在另一个重新导出jsf
的模块中,并将其附加到global
。