Я работал с проектом React с использованием, create-react-app
и у меня есть два варианта, чтобы начать проект:
Первый способ:
npm run start
с определением на вот package.json
так:
"start": "react-scripts start",
Второй способ:
npm start
В чем разница между этими двумя командами? И какова цель этого react-scripts start
?
Я попытался найти определение, но я только что нашел пакет с этим именем. Я до сих пор не знаю, какая польза от этой команды?
npm
вы запускаете такие сценарииnpm run scriptName
,npm start
это также сокращение отnpm run start
react-scripts start
правильная команда для запуска приложения React в режиме разработки. Эта команда хранится в package.json, поэтому вам не нужно ее запоминать, иnpm run start
вместо этого вы можете просто ввести обычный .npm start
является ярлыком для последнего.Ответы:
создать-реагировать-приложение и реагировать-скрипты
react-scripts
это набор скриптов изcreate-react-app
начального пакета. create-реагировать-приложение поможет вам запустить проекты без настройки, поэтому вам не нужно настраивать свой проект самостоятельно.react-scripts start
устанавливает среду разработки и запускает сервер, а также горячую перезагрузку модуля. Вы можете прочитать здесь, чтобы увидеть, что все это делает для вас.с create-реагировать-приложение у вас есть следующие функции из коробки.
сценарии npm
npm start
это ярлык дляnpm run start
.npm run
используется для запуска сценариев, которые вы определили вscripts
объекте вашего package.jsonесли
start
в объекте scripts нет ключа, по умолчаниюnode server.js
Иногда вы хотите сделать больше, чем дают сценарии реакции, в этом случае вы можете это сделать
react-scripts eject
. Это преобразует ваш проект из «управляемого» состояния в неуправляемое состояние, где вы имеете полный контроль над зависимостями, сценариями сборки и другими конфигурациями.источник
npm run build
. это создаст папку сборки. эту папку вы можете затем обслуживать. например,npm install -g serve
а затемserve -s build
facebook.github.io/create-react-app/docs/deploymentКак указал Сагив Б.Г., эта
npm start
команда является ярлыком дляnpm run start
. Я просто хотел добавить пример из жизни чтобы прояснить это немного подробнее.Настройка ниже происходит из
create-react-app
репозитория github.package.json
Определяет набор сценариев , которые определяют фактический поток.Для наглядности я добавил схему.
Синие прямоугольники - это ссылки на сценарии, все из которых вы можете выполнить непосредственно с помощью
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
файлов в файлы и ищет последующие обновления.В
start-js
указывает наreact-scripts start
котором находится сайт в режиме разработки.В заключение
npm start
команда настраивается. Если вы хотите знать, что он делает, то вы должны проверитьpackage.json
файл. (и вы можете сделать небольшую диаграмму, когда все усложняется).источник
«start» - это имя скрипта, в npm вы запускаете такие скрипты
npm run scriptName
,npm start
это также сокращение отnpm run start
Что касается «response-scripts», то это скрипт, связанный конкретно с create-реагировать-приложение
источник