【发布时间】:2023-03-05 19:07:01
【问题描述】:
我正在使用 react 路由器,并且在开发中一切正常,但是当我访问一些具有多个参数的路由时,react 应用程序的生产版本无法正常工作,例如 http://localhost:3000/me/edit .
我尝试在 netlify 中使用 _redirects 文件、nginx 和serve 进行部署。这三个选项都不起作用。
它似乎在请求静态文件夹中的文件。我将附上两张图片,以便您查看我所指的内容。
这是我可以在“来源”选项卡下看到的内容:
当我访问 http://localhost:3000/me 时,它工作正常,这是我在 chrome 上看到的:
当我访问 http://localhost:3000/me/edit 时,如果导致一个空白页面,并且它似乎在我内部请求一个文件 > static > edit 显然不存在;这就是我在 chrome 上看到的:
【问题讨论】:
-
如何生成编辑页面?如果它不存在,则 netlify 不是一个有效的选项,因为它是静态文件的托管。这确实是它在静态文件夹中查找的原因。
-
嘿尼古拉斯!它只是一个组件,允许登录的用户编辑他/她的个人资料。当您登录时,您将被重定向到
localhost:3000/me,在此页面中您有一个按钮来编辑您的个人资料,如果您按下它,您将被重定向到localhost:3000/me/edit并且一切正常,现在如果您重新加载页面,则会出现此错误发生。 -
页面编辑是否存在?这就是我的观点,如果没有,那么 netlify 就不够了。静态主机需要生成的所有页面,这就是它们通常更快的原因。
-
是的,如果我单击将您重定向到该页面 /me/edit 的按钮,我可以访问该页面,但例如,如果我将链接粘贴到此处 localhost:3000/me/edit 并单击它,它将加载空白页
-
你在项目中使用 Webpack 吗?
标签: reactjs react-router