11

我的工作电脑是 Windows 10 Pro,我的笔记本电脑是 Windows 10 Home。push在两个:和pullGit上从事同一个项目。通过 Udemy 学习 React。两台电脑都使用 Chrome。两者都在 Windows 上的 Ubuntu 上使用带有最新更新的 Bash。两者都使用 ConEmu 作为控制台。两者npm -v = 3.10.10。两者node -v = 6.11.2。硬件明显不同,但不确定是否相关且值得列出。

无论如何,我正在玩这个启动项目,当我对其进行更改并npm start运行时,您可以在控制台中看到活动,在浏览器中点击刷新,所做的任何更改都会反映。

在笔记本电脑上,此过程不起作用。进行更改,保存,控制台中没有活动,浏览器中的刷新不反映更改。必须重新启动npm start才能反映更改。至少可以说有点烦人。

无论如何,知道什么可能导致这个?在我的谷歌搜索工作中真的没有遇到任何事情。

4

4 回答 4

10

如果您在 WSL2.0 中使用 npm 进行开发,请参考本文的最后一点 - https://create-react-app.dev/docs/troubleshooting/#npm-start-doesnt-detect-changes

虽然 WSL1.0 不使用 VM,但 WSL2.0 确实使用了轻量级 VM,因此添加

CHOKIDAR_USEPOLLING=true 

在项目目录中的 .env 文件中修复了该问题。

在旁注中,您可能想看看这个

于 2020-10-28T19:27:48.640 回答
5

客户端

为确保客户端更改不被缓存,您可以打开 devtools > Network,然后选中“禁用缓存”。启用此功能后,只要 devtools 处于打开状态,缓存中就没有任何内容。

或者,您可以使用隐身/隐私浏览模式来防止缓存保留内容。

服务器端

我相信你已经意识到每次你想看到你的代码更新时重启你的服务器是很痛苦的。有几种工具可以检测文件更改并自动处理重新启动服务器。

于 2017-08-07T20:34:16.290 回答
0

我只是在 FAST_REFRESH=false 中添加文件 .env。

于 2020-12-19T03:19:07.290 回答
0

对我来说,在 Windows 中工作,WSL2 导致这不起作用。npm start在命令提示符下运行,而不是 WSL 为我解决了这个问题。

于 2022-02-06T10:05:13.370 回答