#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, но все равно не могу использовать быстрое обновление.