我想也许我误解了webpack的目的。如果我有一个现有的遗留网页需要使用webpack构建的输出文件中的类或函数...它是如何访问它的?
例如,webpack包含以下文件:
//test.js
'use strict';
var helloWorld = function(name) {
alert('hello ' + name);
}
export {helloWorld};
如果现有页面中有一个按钮需要调用helloWorld(' bob')onclick - 它如何访问该功能?看起来webpack总是将输出构建为匿名闭包......但它确实返回了对象。执行以下操作是不好的做法:
var MyLib = (function(){
//...webpack logic...
return __webpack_require__(0);
})([{
// ...modules...
}]);
稍后在按钮onclick中,我现在可以调用MyLib.helloWorld(' bob'),这一切似乎都运行得很好。但是由于webpack没有产生var,我确信我做的事情不好。什么是正确的方式?
答案 0 :(得分:0)
默认情况下,webpack为Web环境构建,假设它处理所有应用程序逻辑,因此无法从其他脚本访问webpack运行时中的功能。
看起来您想使用output.library配置 - 这告诉webpack将您的js构建为页面可以使用的库(另请参阅output.libraryTarget
)。在构建的入口点,您将定义构建将向页面公开的对象或函数。