我有一个“Webpack”项目,其中我正在构建几个库。它们都是用<script>标签导入的。我的配置如下所示:
entry: {
bundle: ['./src/index', 'webpack-hot-middleware/client?reload=true'],
mylib: ['./src/loader', 'webpack-hot-middleware/client?reload=true']
},
target: web,
output: {
path: `${__dirname}/dist`,
publicPath: 'http://localhost:3000/',
filename: '[name].js',
library: ['mylib', '[name]'],
libraryTarget: 'umd'
},对于我的测试,我的入口点非常简单:
module.exports = 'abracadabra';根据指南,我遵循how to build a complex library with webpack,如果我理解正确的话,这应该足以在浏览器中获得此行为(在打开带有脚本标记的索引html文件之后):
console.log(mylib) -> 'abracadabra'然而,这不起作用,在浏览器的控制台中,我可以看到mylib是定义的,但它有一个奇怪的形状:
Object {mylib: Object}
mylib: Object
subscribe: function subscribe(handler)
useCustomOverlay: function useCustomOverlay(customOverlay)
__proto__: Object__proto__:其中一些代码与HMR (热模块替换)有关,但我仍然不明白我应该如何使用我的模块。
有什么想法吗?
发布于 2016-07-07 01:33:11
你的入口点有这个吗?
if (module.hot) {
module.hot.accept();
}https://stackoverflow.com/questions/38214605
复制相似问题