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


188

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

npm start

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

node app.js

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

Ответы:


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' на консоли.
Эльф
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.