特定のバージョンのNode.jsでしか動かしてほしくないパッケージがある場合、package.jsonのenginesフィールドに、Node.jsのバージョンを明記しておくと、yarn installやnpm installしたときに警告を表示できるようになる。
- 実行環境のバージョンを固定したいときに便利。
例: Node.js 12だけに限定したい場合
例えば、Node.js 12で実行してほしい場合、次のようにenginesフィールドをpackage.jsonに追加する:
package.json
{
"name": "my-module",
"version": "1.0.0",
"main": "index.js",
"license": "MIT",
"engines": {
"node": "12.x"
}
}
この設定で、Node.js 13環境下でyarn installすると、エラーを起こすことができる:
NPMの場合は、--engine-strictオプションが必要
npm installで同様の警告を起こすためには、--engine-strictオプションをもたせる必要がある。
毎回指定するのは面倒なので、.npmrcに設定しておくといい:
~/.npmrc
engine-strict=true
最後までお読みくださりありがとうございました。Twitterでは、Qiitaに書かない技術ネタなどもツイートしているので、よかったらフォローお願いします
→Twitter@suin