如何解决Apollo错误链接-onError方法中的setState
我正在尝试向用户显示从阿波罗API调用获得的错误消息, 我尝试将我当前的错误保存在onError方法内的ApolloProvider状态下。 问题是onError方法不会停止重新运行,然后我的页面一次又一次地重新呈现。
我的目标:
当我遇到API错误以将消息错误保存为我的状态时,如果errorMsg不为空以向用户显示消息,并在几秒钟后将错误消息重置为'',则消息将消失
const [error,setError] = useState('')
const resetError => setError('')
const errorLink = onError(({ graphQLErrors,networkError }) => {
if (graphQLErrors && graphQLErrors?.length > 0) {
setError(graphQLErrors[0].message)
}
if (networkError) console.log(`[Network error]: ${networkError}`)
})
return (
<ApolloProvider client={apolloClient}>
{children}
{error && <Toast message={getMessage(100)} resetError={resetError}/>}
</ApolloProvider>
)
谢谢!
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。