Node.jsホットロードの実現

2671 ワード

nodeにかかわらずjs原生開発は、express、koraなどのフレームワークを借りてnodeを開発する.jsの場合、コードを更新した後、有効になったファイルを再起動する必要があります.
本論文では原生nodeに一度記録する.js開発の際、プロジェクトに加熱負荷を追加します.何度も手動で再起動して精力を浪費することを避ける~
本題に入るにはnodeを借りる必要があります.jsの開発ツールnodemon
Nodemonの公式解釈は以下の通りです.
nodemon is a tool that helps develop node.js based applications by automatically restarting the node application when file changes in the directory are detected.
nodemon does not require any additional changes to your code or method of development. nodemon is a replacement wrapper for  node , to use  nodemon  replace the word  node  on the command line when executing your script.
nodemonはnodeですjsの補助開発ツールは、ディレクトリファイルを傍受する役割を果たす.傍受後に応答する.
次の操作を行います.
npm install -g nodemon

npm install -s nodemon

インストールが完了したら、すでに起動しています.jsプロジェクトを閉じnodemonコマンドで再起動
nodemon index.js

ここのindex.jsはnodeです.jsプロジェクトのメインエントリファイル.
expressで言えばnodemon bin/www
もう一つ重要なシナリオは、ログファイルを追加したとしたら.または他のファイル.これらのファイルはホットロードする必要はありません.だから.gitをアップロードするようにする必要があります.いくつかのフィルタリングをします
ルートディレクトリの下でよく見られるnodemon.jsonファイル
{
  "restartable": "rs",
  "ignore": [
      ".git",
      ".svn",
      "logs",
      "pem",
      "node_modules/**/node_modules"
  ],
  "verbose": true,
  "execMap": {
      "js": "node server/index.js"
  },
  "watch": [

  ],
  "env": {
    "NODE_ENV": "development"
  },
  "ext": "js json"
}

restartableは起動方法です
ignoreはファイルのフィルタリングです
verboseが詳細を示すかどうか
execMapは起動したメインエントリファイルです
watchは傍受ファイルであってもよい.
Envなら環境の配置
このファイルがokを構成した後、nodemon起動ファイルは必要ありません.nodemonコマンドを直接入力すればいいのです.彼は構成されたjsonファイルに基づいてコンパイル実行します.これの配置はpm 2と大きく似ている.
詳細な構成を知りたい場合は、公式ドキュメントを参照してください.
https://www.npmjs.com/package/nodemon
これで、node.jsが熱更新を実現する方法はここに記録され,自分の成長した点滴が記録されている.
転載先:https://www.cnblogs.com/bgwhite/p/11106797.html