当用户在路线上刷新时,React Build 无法服务器页面
React Build Can not server page when user refresh on a route
我使用 npm run-script build
构建了我的 React 应用程序,一切正常。
当我导航到生产站点并导航到路线并使用 F5 刷新页面时,出现意外错误:
Uncaught SyntaxError: Unexpected token '<'
我在第一次发布时遇到了这个错误,我发现问题出在包 package.json
主页 属性 中,我将其更改为 "homepage": "."
并且站点正常。但是在路线上一切都坏了。
我认为 node serve
不能在子路由上服务器 index.html。
有什么建议吗??
编辑::
我也尝试在以下 link 中使用 express server :
https://create-react-app.dev/docs/deployment/
但没有任何变化。路线刷新时出现同样的错误。
我的图像 url 也坏了。为什么浏览器在 url 的开头附加前缀?!
例如图片源是:./static/media/aaa.4dccf6e3.webp
但浏览器寻找 /admin/static/media/aaa.4dccf6e3.webp
开发系统一切正常!
我发现了问题。
package.json 中的主页 属性。我只是清理值,一切都正常了。
出现问题是因为主页 属性 值为“.” js、css 和图像的每个地址都带有点前缀。当您在客户端的路线中间时,浏览器会从错误的地址获取这些文件。
我使用 npm run-script build
构建了我的 React 应用程序,一切正常。
当我导航到生产站点并导航到路线并使用 F5 刷新页面时,出现意外错误:
Uncaught SyntaxError: Unexpected token '<'
我在第一次发布时遇到了这个错误,我发现问题出在包 package.json
主页 属性 中,我将其更改为 "homepage": "."
并且站点正常。但是在路线上一切都坏了。
我认为 node serve
不能在子路由上服务器 index.html。
有什么建议吗??
编辑::
我也尝试在以下 link 中使用 express server :
https://create-react-app.dev/docs/deployment/
但没有任何变化。路线刷新时出现同样的错误。
我的图像 url 也坏了。为什么浏览器在 url 的开头附加前缀?!
例如图片源是:./static/media/aaa.4dccf6e3.webp
但浏览器寻找 /admin/static/media/aaa.4dccf6e3.webp
开发系统一切正常!
我发现了问题。 package.json 中的主页 属性。我只是清理值,一切都正常了。
出现问题是因为主页 属性 值为“.” js、css 和图像的每个地址都带有点前缀。当您在客户端的路线中间时,浏览器会从错误的地址获取这些文件。