Javascript 使用在Web包生成中公开全局变量的脚本
在我的(第一个)网页包构建中,我很难理解如何加载一个只公开全局变量的脚本 我尝试加载的脚本基本上是这样的:Javascript 使用在Web包生成中公开全局变量的脚本,javascript,webpack,Javascript,Webpack,在我的(第一个)网页包构建中,我很难理解如何加载一个只公开全局变量的脚本 我尝试加载的脚本基本上是这样的: //File: MyLibrary.js var MyLibrary = (function(window) { function MyLibrary() { // Do librarious stuff } return MyLibrary; })(typeof window !== 'undefined' ? window : n
//File: MyLibrary.js
var MyLibrary = (function(window) {
function MyLibrary() {
// Do librarious stuff
}
return MyLibrary;
})(typeof window !== 'undefined' ? window : null);
我想我应该使用导出加载程序
,因为根据文档,它应该正好适合这种情况:
该文件在全局上下文中使用var XModule=..
var-XModule=require(“导出?XModule!。/file.js”)
所以我把它放在我的配置中:
module: {
loaders: [
{
test: /MyLibrary\.js$/,
loader: "exports?MyLibrary!./MyLibrary.js"
}
]
}
但这会导致一个错误:
加载程序MyLibrary.js中的错误未返回函数
这让我很困惑,因为它不应该返回函数,这就是为什么我要使用这个特殊的加载器
那么我应该如何加载脚本呢?您不需要在
loader
属性中指定库的路径,只需:
module: {
loaders: [
{
test: /MyLibrary\.js$/,
loader: "exports?MyLibrary"
}
]
}