2017-04-04 5 views
2

を解決できません、私は 'WebPACKの' コマンドを実行すると、私はこのエラーを取得:./js/main.js モジュールでが見つかりません:エラー: 'jqueryの'

ERRORが見つかりません:エラー:解決できません 'jqueryの' 中」... \ jsの@ ./js/main.js 3:0-16 4:package.jsonで0-23

私が持っている:

"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.でハンドルバーを使用していますハンドルバーやハンドルバーローダーがjqueryを妨害している可能性はありますか?私はハンドルバーを使わなかった別のプロジェクトでこの問題がなくてもwebpackとjqueryを使用しましたが、多分それはそれとは関係ありません。

+0

限り私は知っている、あなたはそれをやったのWebPACK –

答えて

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

でjqueryのを使用するためのJQLITeを使用する必要があります。どうもありがとう – sdMarth

関連する問題