2016-04-24 14 views
3
"scripts": { 
    "build": "babel src -d lib", 
    "start": "node --use_strict ./lib/index.js", 
    "watch": "nodemon lib/index.js --exec npm run build" 
} 

[nodemon] starting "npm lib/index.js run build"nodemonをnpmスクリプトで使用してスクリプトを作成して起動するにはどうすればいいですか?次のコマンドが間違っている、実行中のコマンド<code>npm run watch</code>結果を使用して

私は、リロードに、バベルを使用してコードをtranspilesし、コードを再ロードnodemonコマンドを記述しますどのように

答えて

6

明確な蒸散を避けるために、babel-nodeでコードを実行してください。

$ nodemon lib/index.js --exec babel-node --presets=es2015,stage-2 

babelnodemonを使用するthis is the recommended方法のように思えます。

注意してください、--execを実行すると、リモートでlocalhost

+0

どのパッケージ私はバベルノードを実行するためにインストールする必要がありますか? NPMによると、babel-nodeはリポジトリにありません。すでにbabel-cliがnpm経由でインストールされていても、コマンドを実行すると、babel-nodeは利用できません。 – Connorelsea

+0

'babel-cli'は正しいものです。グローバルにインストールするか、実行パスを '。/ node_modules/.bin/babel-node'に変更する必要があります。 –

+0

プロジェクト内に 'babel-cli'をグローバルかつローカルにインストールしましたが、次のエラーが発生しています。 http://i.imgur.com/UwXaPTz.jpg – Connorelsea

0

のごdevelopment環境を実行するときに、より良いオプションは、インストールではなく、ローカルにインストールされたパッケージを使用してグローバルを使用しないことであろう意図しない副作用を持つことができます。これはまた、12要素のアプリケーション設計ごとにローカルマシンと同じ設定になるかもしれない自動ビルドに役立ちます。

"scripts": { 
"watch": "node ./node_modules/nodemon/bin/nodemon.js" 

}

+0

あなたはもっとそれを説明していただけますか? –

+0

cliでnodemonをグローバルに使用する代わりに、上記のコードを使用して、ローカルのインストール済みパッケージを--saveまたは--save-dev、node ./node_modules/nodemon/bin/nodemon.jsをnpmスクリプトまたはcli cmd。私が渡す必要がある引数も追加します。基本的には、グローバル識別子を使用して呼び出す代わりに、ソリューション構造から直接呼び出すことになります。これは、あなたのチームだけでなく、すべてが同じバージョンを使用するのに役立ちます。パッケージが複数のワークステーションで一定期間にわたってグローバルにインストールされている場合、バージョンはおそらく異なるでしょう。 –

関連する問題