TypeScriptファイルが変更されたときにts-nodeを監視して再ロードする方法



How Watch Reload Ts Node When Typescript Files Change



解決:

編集:nodemonの最新バージョン用に更新されました!

気が付くまで、開発環境で同じことで苦労していました。nodemonのAPIを使用すると、カスタムコマンドを実行するためにデフォルトの動作を変更できます。例えば:



nodemon --watch'src / **/*。ts'--ignore'src/ **/*。spec.ts'--exec'ts-node 'src / index.ts

またはさらに良い:nodemonの設定を外部化して次の内容のnodemon.jsonファイルを実行してから、サンドカンが提案したように、nodemon:

{'watch':['src / ** / *。ts']、 'ignore':['src / ** / *。spec.ts']、 'exec': 'ts-node ./index.ts '}

これを行うことで、ライブリロードが可能になります基礎となる実装について心配する必要のないtsノードプロセス。



乾杯!

nodemonの最新バージョン用に更新:

これは、次のように実行できます。



nodemon --watch'src / ** '--ext'ts、json' --ignore'src / **/*。spec.ts'--exec'ts-nodesrc / index.ts '

または作成する次の内容のnodemon.jsonファイル:

{'watch':['src']、 'ext': 'ts、json'、 'ignore':['src / ** / *。spec.ts']、 'exec': 'ts-node ./ src / index.ts '//または' npx ts-node src / index.ts '}

その後、実行します引数のないnodemon。


私は捨てましたnodemonとts-nodeは、はるかに優れた代替手段を支持し、ts-node-dev https://github.com/whitecolor/ts-node-dev

とにかく走れts-node-dev src / index.ts


npmスクリプトを使用した、HeberLZの回答の代替案を次に示します。

私のpackage.json:

'scripts':{'watch': 'nodemon -e ts -w ./src -x npm run watch:serve'、 'watch:serve': 'ts-node --inspect src / index.ts'}、
  • -eフラグは、検索する拡張機能を設定します。
  • -wは監視対象ディレクトリを設定し、
  • -xはスクリプトを実行します。

-で検査しますwatch:serveスクリプトは実際にはnode.jsフラグであり、デバッグプロトコルを有効にするだけです。