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