nodemonは、コード変更を監視して、自動でNode.jsのアプリケーションを再起動してくれるツールです。開発時に役立ちます。ここでは、nodemonの使い方について確認します。
目次
インストール
開発環境のみ利用するので --save-dev をつけてます。
npm install --save-dev nodemonnodemonで起動
npm start で起動できるように、package.json の scripts を設定します。
"scripts": {
"start": "nodemon src/app.js"
},npm start を実行します。
$ npm start
> express-api@1.0.0 start /sample/express-api
> nodemon src/app.js
[nodemon] 1.19.1
[nodemon] to restart at any time, enter `rs`
[nodemon] watching: *.*
[nodemon] starting `node src/app.js`
Example app listening on port 5000!nodemon経由で src/app.js が起動されました。
src/app.js を編集すると以下のように再起動されます。
[nodemon] restarting due to changes...
[nodemon] starting `node src/app.js`
Example app listening on port 5000!設定ファイル
( nodemon.json )
TypeScriptのホットリロードをしたい場合、nodemonの起動で ts-node を起動するように設定します。
nodemonの設定は、 nodemon.json というファイルに記述します。以下、nodemon.json の記述例です。
{
"watch": ["src"], // 監視対象フォルダ
"ext": "ts", // 監視対象拡張子
"ignore": ["src/**/*.spec.ts"], // 監視対象外
"exec": "ts-node ./src/app.ts" // nodemon起動時の実行スクリプト
}参考
- https://github.com/remy/nodemon/#config-files
- How to watch and reload ts-node when TypeScript files change