在webpack的配置文件中,我将'node_modules'和'src / js / libs'设置为文件夹,其中webpack应该在其中查找模块。 “ jquery-form-styler”是通过npm安装的,位于“ node_modules”中,但是根据第一个错误,webpack尝试在“ src / js / modules”中查找模块。为什么?
ERROR in ./src/js/modules/forms.js
Module not found: Error: Can't resolve 'jquery-form-styler' in '/Users/ildar.meyker/Sites/html-taxnet/src/js/modules'
@ ./src/js/modules/forms.js 5:0-28
@ ./src/js/modules/app.js
@ ./src/js/main.js
我的webpack.config.js内容:
const path = require('path');
const webpack = require('webpack');
module.exports = {
mode: 'development',
entry: {
main: './src/js/main.js',
metrics: './src/js/metrics.js'
},
output: {
filename: '[name].bundle.js',
path: path.resolve(__dirname, 'public/js')
},
resolve: {
modules: [path.resolve(__dirname, 'src/js/libs'), 'node_modules']
},
plugins: [
new webpack.IgnorePlugin(/^\.\/locale$/, /moment$/),
],
optimization: {
splitChunks: {
chunks: "all",
minSize: 0
}
}
};
我的文件结构:
/node_modules/
/src/
js/
libs/
modules/
app.js
...
forms.js
...
main.js
metrics.js
forms.js开始于:
import $ from 'jquery';
import 'jquery.maskedinput';
import 'jquery-validation/jquery.validate';
import 'jquery-validation/additional-methods';
import 'jquery-form-styler';
...
“ jquery”和“ jquery-form-styler”位于“ node_modules”中,而其他模块位于“ src / js / libs”中。
答案 0 :(得分:0)
好像不是webpack引用“ src / js / modules”,因为它试图在该文件夹中查找模块。发生错误,因为'jquery-form-styles'中的package.json具有不正确的main属性。 “ jquery.formstyler.min.js”而不是“ ./dist/jquery.formstyler.min.js”。