我正在使用react-scripts
并成功运行npm run build
生成build
文件夹。
然后,我通过运行serve -s build
使用serve npm软件包在本地提供服务。serve
然后在端口5000上运行,这很好。
当我访问localhost:5000
上的页面时,页面停滞了,控制台main.975cb3de.js:1 Uncaught SyntaxError: Unexpected token <
中出现以下错误。
我在控制台中打开main.975cb3de.js
文件,它正在尝试提供index.html
文件。
如果我清空浏览器缓存并重新加载页面,则可以正常加载。每当我运行构建时都会发生这种情况。
我怀疑库中有配置,但不太确定。
关于为什么它会尝试首次提供HTML以及如何解决此问题的任何想法?
最佳答案
我可以通过将serve
软件包更新为版本6.5.6
并在运行服务时使用--cache
标志来解决此问题。npm update -g serve
事实证明,将-s
标志与serve一起使用时,默认缓存为1天。我不得不禁用此缓存,从而解决了该问题。serve -s ./build --cache=-1
第二个命令对于解决此问题至关重要。
关于javascript - react-scripts构建然后提供服务的是html,而不是main.js文件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/50223956/