2015-01-02 5 views
10

を追加します。すでに 'script'にあるコマンドを再利用したいと思います。私はノードpackage.jsonで、余分なパラメータを持つ別のスクリプトからスクリプトを呼び出します。この場合、ノードのpackage.jsonにmocha watcher

"scripts": { 
      "test" : "./node_modules/mocha/bin/mocha --compilers coffee:coffee-script/register --recursive -R list", 
      "watch": "npm run script test" + "-w", 
      } 
のようなものを持っていると思い

"scripts": { 
      "test" : "./node_modules/mocha/bin/mocha --compilers coffee:coffee-script/register --recursive -R list", 
      "watch": "./node_modules/mocha/bin/mocha --compilers coffee:coffee-script/register --recursive -R list -w", 
      } 

:ここ

は、実用的な例

の代わりに、(時計スクリプトに余分な-wに注意してください)です

これは動作しません(jsonでは文字列コンカチを行うことはできません)が、私は何を望みますか?私はNPMスクリプトをサポートしていることを知っている

: - &(並列実行)を - & &(連番の実行)

ので、多分別のオプションはありますか?

答えて

15

[email protected]で実行できます。使用しているOSと使用しているバージョンを指定していませんが、更新する必要がある場合を除き、ではない[email protected]を実行しています。は以下の構文をサポートしています。

LinuxまたはOSXでは、sudo npm install -g [email protected]でnpmを更新できます。すべてのプラットフォームでnpmを更新する方法については、https://github.com/npm/npm/wiki/Troubleshooting#try-the-latest-stable-version-of-npmを参照してください。

あなたのスクリプトに追加の引数を渡すことによってこれを行うことができるようになります。

"scripts": { "test": "mocha --compilers coffee:coffee-script/register --recursive -R list", "watch": "npm run test -- -w }

私は次の、簡略化されpackage.jsonを使用して、これを検証:

{ "scripts": { "a": "ls", "b": "npm run a -- -l" } }

出力:

$ npm run a 

> @ a /Users/smikes/src/github/foo 
> ls 

package.json 
$ npm run b 

> @ b /Users/smikes/src/github/foo 
> npm run a -- -l 


> @ a /Users/smikes/src/github/foo 
> ls -l 

total 8 
-rw-r--r-- 1 smikes staff 55 4 Jan 05:34 package.json 
$ 
+0

完璧だった、ありがとう。ここでは、修正を伴うコミットですhttps://github.com/o2platform/fluentnode/commit/a2508df1d295d17ddbea8c7ac6c204d86886409d –

+0

私はそれが助けてうれしい! –

+0

スクリプトから別のスクリプトを呼び出すときに "npm run"が表示されませんでした。ありがとう! –

関連する問題