2017-04-04 89 views
2

當我運行 '的WebPack' 命令,我得到這個錯誤:的WebPack模塊未發現:錯誤:無法解析 'jQuery的'

ERROR在./js/main.js 模塊沒有發現錯誤: :無法解析 'jQuery的' 中」 ... \ JS' @ ./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" 
}, 

in 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.難道那是句柄或handlebars加載器干擾jQuery?我之前在另一個沒有使用句柄的項目中使用過webpack和jquery,而沒有這個問題,但也許它跟它沒有任何關係。

+0

據我所知,你應該使用JQLITe與webpack使用jquery –

回答

9

把手與它無關。問題是您將resolve.modules更改爲[path.join(__dirname, "js/helpers")]。因此webpack只會在js/helpers中查找任何模塊,但jquery和npm的其他依賴項在node_modules中。默認值resolve.modules["node_modules"]。您還需要添加node_modules以保持常規模塊分辨率。

resolve: { 
    modules: [ 
    path.join(__dirname, "js/helpers"), 
    "node_modules" 
    ] 
}, 
+0

這樣做。非常感謝 – sdMarth

相關問題