Как Сагив б.г. отметил, что команда 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
. (Эти последние упомянутые сценарии являются наблюдателями, которые отслеживают изменения файлов и завершают работу только после завершения работы.)
watch-css
проверяет, что *.scss
файлы переведены в *.css
files, и ожидает будущих обновлений.
start-js
указывает на react-scripts start
, на котором размещен веб-сайт в режиме разработки.
В заключение, команду npm start
можно настроить. Если вы хотите знать, что он делает, вам нужно проверить package.json
файл. (и вы можете сделать небольшую диаграмму, когда все станет сложнее).
person
bvdb
schedule
19.11.2018
npm
вы запускаете такие сценарииnpm run scriptName
,npm start
также является сокращением отnpm run start
- person Sagiv b.g   schedule 06.06.2018react-scripts start
- правильная команда для запуска приложения React в режиме разработки. Эта команда хранится в package.json, поэтому вам не нужно запоминать ее, и вместо нее можно просто ввести обычныйnpm run start
.npm start
- это ярлык для последнего. - person Chris G   schedule 06.06.2018