Быстрое обновление React Native не работает без запуска sudo npm

#node.js #react-native #npm #watchman #metro-bundler

#node.js #react-native #npm #сторож #metro-bundler

Вопрос:

Мой проект react native не может использовать функцию быстрого обновления React Native без sudo npm start

Если я просто запускаю npm start ios simulator, обновление не может быть выполнено при сохранении js-файла из vscode.

Как я могу решить эту проблему? Упаковщик не отвечает без жесткой перезагрузки (cmd r)

вывод watchman watch-list

 {
    "version": "4.9.0",
    "roots": [
        "/path/to/project-root",
        
    ]
}
 

версии пакетов:

  • npm: 6.14.9
  • «реагировать»: «16.13.1»,
  • «react-native»: «0.63.4»,

Что я пробовал?

  • я удалил watchman, установите снова,
  • очистите кэш npm, кэш watchman, кэш metro bundler 50 раз.
  • удалить ./git/index.lock
  • удалите node_modules и установите снова
  • удалить весь проект с компьютера и клонировать из git
  • предоставьте полный доступ к файлам watchman из настроек macos
  • sudo chown -R $(whoami) /usr/bin/npm
  • sudo chown -R $(whoami) /usr/bin/node
  • sudo chown -R $(whoami) /usr/lib/node_modules/
  • sudo chown -R $(whoami /usr/local
  • создайте чистый проект react native и попробуйте его

ни один из них не сработал для меня. Но если я sudo npm start тогда запущу npm run-ios , это сработает. Но что произошло, почему npm перестал работать без sudo

Я ничего не менял.

 watchman --server-encoding=json --persistent log-level debug
 

с помощью этой команды я могу подтвердить, что watchman работает для моего проекта. Когда я изменяю файл и сохраняю, он регистрируется.

Также я пытался yarn run ios

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

1. Не могли бы вы подтвердить, что ваш watchman запускается при запуске вашего упаковщика?

2. Возможно, эта ссылка может вам помочь. facebook.github.io/watchman/docs/troubleshooting.html

3. @WaheedAkhtar я обновил свои вопросы. watchman —server-encoding=json — работает постоянная отладка на уровне журнала, и изменения файлов запускают журнал.

4. Я столкнулся с той же проблемой, переключился на yarn вместо npm, и горячая перезагрузка снова начала работать.

5. @KetanRamteke Я тоже пробовал yarn, но все равно не могу использовать быстрое обновление.