Как указал Сагив Б.Г., эта npm start
команда является ярлыком для npm run start
. Я просто хотел добавить пример из жизни чтобы прояснить это немного подробнее.
Настройка ниже происходит из create-react-app
репозитория github. package.json
Определяет набор сценариев , которые определяют фактический поток.
"scripts": {
"start": "npm-run-all -p watch-css start-js",
"build": "npm run build-css && react-scripts build",
"watch-css": "npm run build-css && node-sass-chokidar --include-path ./src --include-path ./node_modules src/ -o src/ --watch --recursive",
"build-css": "node-sass-chokidar --include-path ./src --include-path ./node_modules src/ -o src/",
"start-js": "react-scripts start"
},
Для наглядности я добавил схему.
Синие прямоугольники - это ссылки на сценарии, все из которых вы можете выполнить непосредственно с помощью npm run <script-name>
команды. Но, как видите, на самом деле есть только 2 практических потока:
npm run start
npm run build
Серые поля - это команды, которые можно выполнить из командной строки.
Так, например, если вы запускаете npm start
(или npm run start
), что фактически переводите в npm-run-all -p watch-css start-js
команду, которая выполняется из командной строки.
В моем случае у меня есть эта специальная npm-run-all
команда, которая является популярным плагином, который ищет скрипты, которые начинаются с «build:», и выполняет все из них. У меня на самом деле нет таких, которые соответствуют этому шаблону. Но его также можно использовать для параллельного запуска нескольких команд, что и здесь, с помощью -p <command1> <command2>
переключателя. Итак, здесь он выполняет 2 скрипта, т.е. watch-css
и start-js
. (Эти последние упомянутые скрипты являются наблюдателями, которые следят за изменениями файлов и заканчивают работу только после их закрытия.)
В заключение npm start
команда настраивается. Если вы хотите знать, что он делает, то вы должны проверить package.json
файл. (и вы можете сделать небольшую диаграмму, когда все усложняется).
npm
вы запускаете такие сценарииnpm run scriptName
,npm start
это также сокращение отnpm run start