我浏览了许多针对此错误的可能解决方案,但均未成功。我理解根本问题是对 /static/js/main.[hash].js
的请求期待 JS,而不是返回 HTML。但是,我无法理解为什么应用程序在使用私有窗口时运行良好,并且在清除缓存和硬重新加载后也能正常工作一次。除了错误消息之外,我们还看到了白屏并且应用无法加载。
查看浏览器中的网络选项卡,我比较了工作和不工作时的请求。我注意到在工作时,即在私人窗口中,似乎 HTML 是使用不同的端点 /null
获取的。响应与导致错误的 HTML 相同(应用 HTML),但出于某种原因,它在这里有效。
如果我可以定义接受 HTML 或 JSX 的请求,似乎可以修复错误,但我不知道在哪里可以找到调用此请求的位置,因为这似乎都是由 Webpack 处理的。
需要注意的一点是,当运行 yarn build
并在本地提供构建时,我们仍然收到错误消息,但应用确实加载了(没有白屏)。在本地构建的 HTML 中,我们找到了这样的脚本标签:
<script src="undefined"></script>
虽然生产(破坏)构建给了我们这个:
<script type="text/javascript" src="/static/js/main.ff34f559.js"></script>
编辑:该项目是使用 CRA 创建的,然后刚刚弹出
非常感谢任何帮助!