Как запустить два реагирующих проекта вместе в моем местном - PullRequest
1 голос
/ 01 февраля 2020

Структура моего проекта выглядит следующим образом:

Projects --- package.json 
   |-------Project1 ---- package.json
   |-------Project2 ---- package.json

, если я запускаю yarn start из cd Projects/Project1, приложение Project1 реагирует на запуск приложения.

, если я запускаю yarn start из cd Projects/Project2, запускается приложение реакции проекта2.

для запуска приложения из Projects, мне нужно указать имя проекта: например: yarn start-Project1

Я хочу запустить оба моих проекта из самого верхнего каталога, используя запуск пряжи. Я хочу запускать проекты на разных портах.

Если я заменим package.json в «Проектах» на этот

"start": "cd Projects/Project1 && export PORT=3001 && cd ../Project2 && export PORT=3000 && react-scripts start",

Это только запуск проекта. Спасибо.

1 Ответ

0 голосов
/ 01 февраля 2020

Это связано с тем, что оператор && выполняет команды последовательно, то есть каждая команда выполняется после выхода предыдущей команды. Ваш Project1 не завершается, он просто сидит и работает бесконечно.

Вам нужно выполнять обе ваши команды параллельно. Один из способов сделать это - использовать & вместо &&. & запустит первую команду в фоновом режиме, а не будет ждать ее завершения.

При использовании & вам следует соблюдать осторожность в порядке операций. Вы можете использовать скобки для группировки последовательных / параллельных команд по мере необходимости. Я думаю, что эта команда может работать для вас:

(cd Projects/Project1 && export PORT=3001) & (cd ../Project2 && export PORT=3000) & react-scripts start
...