我使用 create-react-app 样板创建了一个 react 应用程序,它似乎非常流行,热重载有时会在任何文件更改时更新,有时不会更新,似乎有最短持续时间或类似的东西,我我使用 Ubuntu,节点版本 7.0,npm:'react-script start'
我缺少package.json 中的脚本?
React 创建应用程序热重载并不总是在 linux 上工作
IT技术
node.js
linux
reactjs
create-react-app
2021-04-27 01:55:42
4个回答
当 npm start 未检测到更改时,以下是create-react-app
文档中提供的常见故障排除步骤-链接。
当应用程序正在运行npm start
并在编辑器中更新代码时,可能应该使用更新后的代码刷新浏览器。如果这没有发生,请尝试以下解决方法之一:
- 如果项目文件直接从 Dropbox 或 Google Drive 等云存储同步到您的本地系统,并且您尝试直接在其中运行应用程序,请尝试将其移出。
- 由于 Webpack 错误,您可能需要重新启动 watcher。如果观察者没有检测到 index.js 并且您通过文件夹名称引用它。
- Vim 和 IntelliJ 等编辑器中的安全写入功能目前破坏了观察者。您将需要禁用它。
- 由于Webpack 观察程序错误,路径包含括号的项目会导致问题,请尝试将项目移动到没有括号的路径。.
- 要在 Linux 和 macOS 中允许更多观察者,您可能需要调整系统设置。
- 如果项目在虚拟机中运行,例如(Vagrant 配置的)VirtualBox,
.env
如果它不存在,请在项目目录中创建一个文件,然后添加CHOKIDAR_USEPOLLING=true
到其中。这可确保下次运行时npm start
,观察者在 VM 内根据需要使用轮询模式。 - 可以尝试增加
max_users_watches
-链接
更多参考:
试试这些:
- 在 IDE 中关闭安全写入
- 增加
max_user_watches
- 你的路径不应该有括号
作为最后的手段,尝试将其用作您的 env 变量:
CHOKIDAR_USEPOLLING=true npm start
来源:https : //github.com/facebookincubator/create-react-app/issues/659 https://github.com/facebookincubator/create-react-app/issues/1049#issuecomment-261731734
我能够使用以下方法完成这项工作:
sudo npm start
运行这个命令
sudo -i
echo 1048576 > /proc/sys/fs/inotify/max_user_watches
exit
其它你可能感兴趣的问题