Почему я не могу заставить отладку React Native работать в VSCode?

#react-native #visual-studio-code

#react-native #visual-studio-code

Вопрос:

Я просмотрел так много руководств, и они кажутся такими простыми, но я просто не могу заставить отладку работать (запуск Expo, не готов к извлечению, это совершенно другой уровень сумасшествия).

Я пытался создать приложение с помощью create-react-native-app , а также с помощью expo-init , которые, похоже, являются одним и тем же. Я начинаю запускать приложение с yarn start , и я вижу приложение в Expo. Я выбираю «Прикрепить к Packager» в VSCode, и каждый раз происходит сбой.

Я добавил "react-native.packager.port": 19005 в свои настройки.json, но, похоже, не могу найти правильный порт. На моем экране Metro так много разных портов в стольких разных местах:

  • Терминал, на котором я запускался yarn start , говорит
 Expo DevTools is running at http://localhost:19003
Opening DevTools in the browser... (press shift-d to disable)
Starting Metro Bundler on port 19005.
Successfully ran `adb reverse`. Localhost URLs should work on the connected Android device.
Tunnel ready.

  exp://192.168.1.5:19004
  
  • Окно chrome находится на localhost:19003
  • Первая строка терминала Metro Bundler гласит Starting Metro Bundler on port 19005.
  • Позже в терминале говорится Opening exp://127.0.0.1:19004 in iOS simulator
  • На боковой панели написано exp://192.168.1.5:19004 , что отражено на экране настроек разработчика в симуляторе iOS.

Я пытался изменить порт в "react-native.packager.port": 19005 на все номера от 19000 до 19005, и все они завершаются неудачей. Все они говорят:

 Could not debug. Cannot attach to packager. 
Are you sure there is a packager and it is running in the port 19003? 
If your packager is configured to run in another port make sure to add that to the settings.json. (error code 504)
  

разумеется, с текущим установленным портом.

ПОМОГИТЕ МНЕ!!!

Комментарии:

1. Я тоже сталкиваюсь с тем же. Вы решаете это?

Ответ №1:

react-native.packager.port следует изменить порт, на котором запущено средство разработчика браузера. Остановка и перезапуск npm-сервера снова сработали для меня.