npm
npmスクリプト
サーチ…
構文
-
package.json
の "scripts"プロパティを使用すると、npmパッケージをローカルで実行できます。 -
"karma": "karma"
スクリプトはkarma
シェルスクリプトを参照し、node_modules/.bin
ディレクトリを参照します。この参照は取得する必要があり、"test": "karma start"
などの他のnpmスクリプトで使用するためには別名をそれに適用する必要があります。
備考
事前に承認されたスクリプト
-
prepublish
:パッケージが公開されるprepublish
実行する -
publish
、postpublish
:パッケージの公開後に実行publish
-
preinstall
:パッケージをインストールする前に実行する -
install
、postinstall
:パッケージのpostinstall
後に実行install
-
preversion
、version
:パッケージ版をバンプする前に実行する -
postversion
:パッケージ版をバンプした後に実行する -
pretest
、test
、posttest
:npm test
コマンドで実行します。 -
prestop
、stop
、poststop
:npm stop
コマンドで実行します。 -
prestart
、start
、poststart
:npm start
コマンドで実行する -
prerestart
、restart
、postrestart
:によって実行npm restart
コマンド。注意:restart
スクリプトがない場合、npm restart
はstopスクリプトとstartスクリプトを実行します。
package.json
"scripts"
プロパティは非常に強力なツールであることが推測できます。 GruntとGulpのようなビルドツールとして使うことができますが、250,000以上のパッケージが利用できます。 NPMスクリプトは、 node_modules/.bin
ディレクトリからプロジェクトにローカルにインストールされたnpmパッケージを実行します。
ローカルにカルマを走らせる
package.json
スニペット
{
"scripts":
"test": "karma start",
"karma": "karma"
}
}
npmスクリプトの実行
npmスクリプトには2種類あり、それぞれを実行するコマンドは少し異なります。最初の種類のnpmスクリプトは、 "事前に認識された"スクリプトです。これらのスクリプトはnpmによって自動的に認識されるため、特別な接頭語は必要ありません(他のタイプの場合と同様)。他のタイプのスクリプトは「カスタム」スクリプトです。これらのスクリプトはnpmによってあらかじめ認識されておらず、それらを実行する特別なコマンドの前に付ける必要があります。備考欄には事前に承認されたスクリプトのリストがあります。
事前に認識されたスクリプトを実行するには:
npm start
またはnpm test
カスタムスクリプトを実行するには、 run
コマンドを使用する必要があります。
npm run karma
どのnpmスクリプトがどのようなもので、どのようにトリガーされますか?
npmスクリプトは、適切な引数で呼び出されたときにnpm
が実行されるコマンドです。これのパワーとセンスは、あなたの環境をグローバルに脅かすnpmパッケージをインストールしないことです。
事前に認識されたスクリプトとカスタムスクリプトとの違いは、タグ間のrun
語に依存します。 custom
スクリプトでは、npmとスクリプト名の間でrun
する必要がありrun
これに基づいて、npmで実行する異なるタスクやスクリプトを区別して作成することができます。
package.json
ファイルの次の例を考えます。
{
"name": "MyApp",
"version": "1.0.0",
"description": "",
"main": "app.js",
"scripts": {
"test": "mocha --recursive ./tests/",
"test:watch": "npm run test -- -w",
"start": "nodemon --inspect ./app.js",
"build": "rm -rf ./dist/ && gulp build"
}
...
}
実行するタスクは次のとおりです。
npm test
これは事前に認識されたスクリプトなのでうまく動作しますnpm run test
npmスクリプトを実行するのに有効な方法なので、うまくnpm run test
ますnpm run test:watch
も動作し、npmは自身の内部でテストを実行しますnpm run build
実行する前に考えをgulp build
削除dist
ディレクトリにあるフォルダを(あなたは、Linuxであるか、またはコマンド仮定rm
認識されています)