我应该如何管理React Router V7中的400响应? 我正在编写React Router V7应用程序 - 这是我第一次使用RR7。如果我提出API请求并给出400个不良请求响应,我想使用响应主体向用户展示什么...

问题描述 投票:0回答:1
fetcher.submit

,然后又调用API调用函数。这是行不通的:相反,我一直回到根错误边界(因为它是唯一的一个)。我得到它的方式,RR捕获了抛出的错误并停止正常传播,而是通过错误边界系统管理。

因此,我认为我可以在路由组件周围编写一个错误边界,即使我仍然必须弄清楚如何使其正常工作(例如,我如何“关闭错误”并返回页面?)。但是,

文献

建议反对这样做,因为这不是没有渲染页面所需的情况(请参阅该页面中的第3节,允许例外):
不建议有意施加错误,以迫使误差边界作为控制流量。错误边界主要用于捕获代码中的无意错误。
prife是#2中规则的例外,尤其是404s。当您的加载程序找不到渲染页面所需的内容时,您可以将数据()(带有适当的状态代码)的故意抛向最接近的错误边界。投掷404并继续前进。

端,

在React RouteV7中处理400个错误的适当的惯用方法是什么?

在我找到答案的文档中更深入地挖掘。

读取后,我使用
clientAction
检索我从API调用函数中从服务器收到的错误消息。

,但是,要显示一个对话框,您可以关闭进一步的步骤。我使用React状态存储错误,并且仅在错误不是

fetcher.data
时显示对话框。然后,我使用反应效应来设置状态,当

null发生变化时,这有效地显示了对话框。当用户采取行动关闭对话框时,关闭处理程序将状态设置为fetcher.data

,有效地关闭对话框。
reactjs react-router
1个回答
0
投票

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.