找不到webpack模块:错误:无法解析’jquery’
当我运行’webpack’命令时,我收到此错误:
./js/main.js中的错误找不到模块:错误:无法解析’… \ js’中的’jquery’@ ./js/main.js 3:0-16 4:0-23
在package.json我有:
"devDependencies": { "handlebars": "^4.0.6", "handlebars-loader": "^1.4.0", "jquery": "^3.2.1", "path": "^0.12.7" },
在webpack.config.js中:
var path = require("path"); module.exports = { entry: "./js/main.js", output: { path: __dirname + "/js", filename: "scripts-bundled.js" }, resolve: { modules: [ path.join(__dirname, "js/helpers") ] }, module: { loaders: [ {test: /\.hbs$/, loader: "handlebars-loader"} ] } };
在文件顶部的main.js中,我有:
import $ from 'jquery';
我也在main.js中使用把手。 可能是车把或车把装载机干扰了jquery? 我之前在没有使用把手的另一个项目中使用了webpack和jquery而没有这个问题,但也许它与它无关。
把手与它无关。 问题是您将[path.join(__dirname, "js/helpers")]
更改为[path.join(__dirname, "js/helpers")]
。 所以webpack只会查找任何模块的js/helpers
,但是来自npm的jquery
和其他依赖项都在node_modules
。 ["node_modules"]
的默认值是["node_modules"]
。 您还需要添加node_modules
以保持常规模块分辨率。
resolve: { modules: [ path.join(__dirname, "js/helpers"), "node_modules" ] },