【发布时间】:2018-12-30 03:18:11
【问题描述】:
在 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' 中。
【问题讨论】:
标签: javascript webpack