Nodemonで開始スクリプトを実行する方法


92

Nodemonを使用してpackage.jsonファイルから開始スクリプトを実行するにはどうすればよいですか?


package.jsonから開始スクリプトを実行できますか?私が知っていることから、package.jsonはすべての依存関係を一覧表示することであり、nodemonはプロセスを実行し続けることです。あなたがここで何をほのめかしているのかよくわかりませんか?
Saras Arya 2015年

回答:


142

これはこのための簡単なコマンドになります

nodemon --exec npm start

アプリを実行せずにテストのみを実行する必要がある場合はどうなりますか?ソリューションは両方を実行します。
セルゲイ

1
これは実行されますnpm startが、ノードサーバーは起動しません。server.jsがどこにあるかをどのように知るのでしょうか。
ソニックソウル

41

パッケージjson:

{
  "name": "abc",
  "version": "0.0.1",
  "description": "my server",
  "scripts": {
    "start": "nodemon my_file.js"
  },
  "devDependencies": {
    "nodemon": "~1.3.8",
  },
  "dependencies": {

  }
}

その後、ターミナルから使用できます npm start

Nodemonのインストール:https://www.npmjs.com/package/nodemon


1
申し訳ありませんが、開始スクリプトnodemonを実行するのではなく、nodemonを使用して開始スクリプトを実行する方法を探しています。それが明確でない場合は申し訳ありません。
シトロネン2015年

6
npm startnodemonがないために本番環境で失敗しませんか?
ripper234 2016

2
npm run startないnpm start
M.Dhaouadi18年

1
私はnpmの初心者です。nodemonをすぐに使用できるのに、なぜ開始スクリプトを指定する必要があるのか​​わかりません。npmを使用してnodemonをインストールし、スクリプトを指定せずに直接使用するだけで、完全に機能します。
Hokhy Tann 2018

@ M.Dhaouadiはのnpm startエイリアスですnpm run start
George

18

「server.ts」というTypeScriptファイルがあります。次のnpmスクリプトは、アプリを起動してTypeScriptファイルの変更を監視するようにNodemonとnpmを構成します。

"start": "nodemon -e ts  --exec \"npm run myapp\"",
"myapp": "tsc -p . && node server.js",

私はすでに依存関係にNodemonを持っています。を実行npm startすると、-eスイッチを使用してファイルを監視するようにNodemonにmyapp要求し、typescriptファイルをトランスパイルして結果のserver.jsを起動するという単純な組み合わせであるnpmスクリプトを呼び出します。TypeScriptファイルを変更すると、-e切り替えのために同じサイクルが発生し、新しい.jsファイルが生成されて実行されます。


15

Node.jsプロジェクトでNodemonバージョン1.88.3を使用しています。Nodemonをインストールするには、https: //www.npmjs.com/package/nodemonを参照してください

package.jsonをチェックして、「スクリプト」が次のように変更されているかどうかを確認します。

  "scripts": {
    "dev": "nodemon server.js"
  },

server.jsは私のファイル名ですapp.js。このファイルには、のような別の名前を使用できます。

その後、ターミナルでこれを実行します。 npm run dev



5

まず、package.jsonファイルを変更します。

"scripts":
    { 
        "start": "node ./bin/www",
        "start-dev": "nodemon ./app.js"
    },

その後、コマンドを実行します

npm run start-dev

1
しかし、あなたが逃げるとき、app.jsあなたはすることすべてを迂回して./bin/wwwいます...
ジェイクウィルソン

1
これは毎回新しいタブを開きます
Qui-GonJinn19年

5

package.jsonファイル内。このようにファイルを変更する

"scripts":{ 
   "start": "node ./bin/www", 
   "start-dev": "nodemon ./app.js"
 },

次に、npm runstart-devを実行します



2

グローバルにインストールされている場合

"scripts": {
    "start": "nodemon FileName.js(server.js)",
},

nodemonグローバルにインストールしたことを確認してください。

npm install -g nodemon

最後に、Windowsユーザーの場合は、WindowsPowerShellのセキュリティ制限が有効になっていることを確認しください。


2

パッケージ内json

"scripts": {
  "start": "node index",
  "dev": "nodemon index"
},

"devDependencies": {
  "nodemon": "^2.0.2"
}

そして開発のためのターミナルで:

npm run dev

そして、サーバーを定期的に起動するために:

npm start

「regiuler」とは何ですか?「レギュラー」という意味ですか?
PeterMortensen20年

1

nodemonをグローバルにインストールして、頻繁に使用することもできます。

npm i nodemon -g または sudo npm i nodemon -g

次に、package.jsonを編集します。

  "scripts": {
    "start": "node index.js",
    "dev": "nodemon index.js"
  },

一般に、「dev」は開発用途を指定します(npm run dev)。


1

Nodemonのインストールの種類によって異なります。コマンド(npm install nodemon --globalまたはnpm install nodemon -g)を使用してNodemonをグローバルにインストールする場合、package.jsonファイルでNodemonのスクリプトを指定する必要はありません。コマンドnodemon index.jsを実行するだけでプロジェクトが実行されます。

ただし、コマンドでローカルにNodemonをインストールする場合はnpm install nodemon、スクリプトを指定する必要があります。あなたはそれに名前を付ける場合など開始後、npm run startまたはnpm start実行するには、サーバーをトリガします。

// Absolutely no need for global installation
 "scripts": {
    "start": "nodemon index.js"
  }

1

nodemonグローバルにインストールした場合nodemon、プロジェクトで実行するだけで、startからスクリプトが自動的に実行されますpackage.json

例えば:

"scripts": {
  "start": "node src/server.js"
},

nodemonのドキュメントから:

nodemonは、package.json内のscripts.startプロパティも検索します(nodemon 1.1.x以降)。


-1

グローバルインストールを回避するには、依存関係としてNodemonを追加してから、...

package.json

"scripts": {
    "start": "node ./bin/www",
    "start-dev": "./node_modules/nodemon/bin/nodemon.js ./bin/www"
  },

あなたはdevDependenciesの下でそれをインストールした場合、「nodemon ./bin/www」:あなたはまだそれが「-devを開始」することができます
WoLfPwNeR
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.