Разница между `npm start` и` node app.js`, при запуске приложения?

188

Я установил приложение с помощью команды express new 'filename'. Я только что узнал, что вы можете запустить приложение, используя:

npm start

До сих пор я использовал:

node app.js

запустить мой сервер. Кто-нибудь знает, в чем разница между ними? Спасибо.

ReneGAED
источник

Ответы:

267

Со страницы man , npm start:

запускает скрипт запуска пакета, если он был предоставлен Если версия не указана, запускается «активная» версия.

По общему признанию, это описание совершенно бесполезно, и это все, что он говорит. По крайней мере, это более задокументировано, чем socket.io.

В любом случае, на самом деле происходит то, что npm просматривает ваш файл package.json , и если у вас есть что-то вроде

"scripts": {"start": "coffee server.coffee"}

тогда это будет сделано. Если npm не может найти ваш стартовый скрипт, по умолчанию:

узел server.js

 

Юсуф Икс
источник
4
Ах я вижу. Так что это по сути то же самое, если вы не решите запустить больше скриптов во время компиляции.
ReneGAED
1
Если вы обычно набираете "node server.js", тогда да.
Юсуф Х
1
Я создал одно новое приложение, npm start не работает. для старого приложения он работает нормально. какие-либо предложения?
ученик
1
Например, «node app.js» не будет принимать изменения маршрутизатора, в то время как «npm start» будет запускать сценарий запуска package.json (например, «node ./bin/www»)
Игорь Ващук,
1
если вы начнете с 'npm', он может перезапустить приложение, просто набрав 'rs' на консоли.
Эльф