我的webpack配置指定了许多要构建到vendors.js中的节点模块。所有模块都与npm一起安装,并驻留在父文件夹node_modules中。
文件夹结构:
app/scripts/a.js
node_modules/bootstrap-multiselect
webpack.config.js来自webpack.config.js的片段:
entry: {
vendors: ['jquery', 'bootstrap', 'bootstrap-multiselect']
}对于'jquery‘和'bootstrap’来说,这很好,但是对于‘bootstrap-multiselect’则不是这样:
ERROR in multi vendors
Module not found: Error: Cannot resolve module 'bootstrap-multiselect'
in /home/user/appwebpack似乎找错了node_modules文件夹。它看上去似乎是应用程序文件夹的根,但是为什么它还会找到其他模块呢?所以我加入了resolve和resolveLoader的每一个变体,
resolveLoader: {root: path.join(__dirname, 'node_modules')};
resolve: {root: [path.join __dirname, 'node_modules']};还是没有运气..。
发布于 2015-12-06 23:31:34
不知道为什么,但是用npm下载的npm似乎没有得到正确的配置。main条目指向一个不存在的文件。这就是你可能会犯错误的原因。
package.json
"main": "dist/bootstrap-multiselect.js"bootstrap-multiselect.js文件不是在dist下,而是在dist/js下。作为一种解决办法,您可以:
vendors字段和require字段中的完整路径:
供应商:'jquery',‘引导’,'bootstrap-multiselect/dist/js/bootstrap-multiselect‘require('bootstrap-multiselect/dist/js/bootstrap-multiselect';webpack.config.js中的“真实”文件:
解析:{别名:{‘引导-多选择’:'bootstrap-multiselect/dist/js/bootstrap-multiselect‘}}但是,它迟早会被修复,因为我检查了github项目,在那里package.json文件看起来是正确的。
https://stackoverflow.com/questions/34123358
复制相似问题