2017-12-10 4 views
0

WindowsでDjango + ReactJSの学習に興味があったので、この手順をステップtutorialに従いました。WebpackはSyntaxErrorのためにバンドルできません

今、私はバンドリング段階に入っています。私は、迅速な健全性チェックとして私バンドラを実行すると:

$ node_modules/.bin/webpack --config webpack.dev.config.js 

私はnode_modules is not recognized as a windows commandを取得します。さまざまな解決策を試した後、webpackコマンドの前のnodeコマンドを使用してwebpackを実行していることがわかりました。それをやって

webpackを起動しているようだが、私はこのエラーを取得しています:

$ node node_modules/.bin/webpack --config webpack.dev.config.js 

\node_modules\.bin\webpack:2 
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')") 
      ^^^^^^^ 

SyntaxError: missing) after argument list 
    at createScript (vm.js:80:10) 
    at Object.runInThisContext (vm.js:139:10) 
    at Module._compile (module.js:599:28) 
    at Object.Module._extensions..js (module.js:646:10) 
    at Module.load (module.js:554:32) 
    at tryModuleLoad (module.js:497:12) 
    at Function.Module._load (module.js:489:3) 
    at Function.Module.runMain (module.js:676:10) 
    at startup (bootstrap_node.js:187:16) 
    at bootstrap_node.js:608:3 

これはpackage.jsonによる誤差だろうか?

答えて

1

このチュートリアルで提供されるコマンドは、Unixベースのシステムでは動作しますが、Windows上にあります。 node_modules/.binフォルダを開き、実際にはwebpack(Unix)とwebpack.cmd(Windows)の2つのファイルがあることに注意してください。

この違いを処理する最も簡単な方法は、Node Package Manager(NPM)が自動的にシステムを検出し、正しいバイナリを実行するようにすることです。その機能を使用するには、あなたのpackage.jsonでスクリプトフィールドを作成します。ここでは

"scripts": { 
    "webpack": "webpack --config ./webpack.config.js" 
} 

は、構文の説明です:

"scripts": { 
    "SCRIPT_NAME": "BINARY_NAME attributes" 
} 

その後、あなたはそれをこのように使用することができます。

npm run webpack 

あなたが読むことができますNPM run-script documentationの詳細。

関連する問題