gpt4 book ai didi

javascript - 如何让 react Electron 忽略未定义的错误?

转载 作者:可可西里 更新时间:2023-11-01 02:18:43 30 4
gpt4 key购买 nike

enter image description here enter image description here

Windows 上的 React Electron,如果 A 为 null,调用 A.test 将使应用程序停止工作,然后用户必须关闭应用程序并重新启动它。如何让 react 忽略错误,并继续工作。代码有很多A.test,我不能到处写if(A) A.test。如果无法解决,我可以在 WebView 上打印错误吗?所以我不必远程访问用户的计算机来查看控制台错误。

最佳答案

注意

我认为解决方案是使用 react error boundaries ,如控制台中所建议的那样。

您已经指出您正在使用错误边界,因此在测试您的场景之后 in this fiddle我相信您的实现可能不正确。


在文档中为 ErrorBoundary 提供了类似的实现:

class ErrorBoundary extends React.Component {
state = { hasError: '' };
render() {
return this.state.hasError ? (
<span>Oops! Something went wrong:<br />{this.state.hasError}</span>
) : this.props.children;
}
}
ErrorBoundary.getDerivedStateFromError = (error) => ({ hasError: error.toString() });

此组件将在其任何 中断时呈现回退。

Error boundaries are React components that catch JavaScript errors anywhere in their child component tree, log those errors, and display a fallback UI

它看起来类似于:

<MyReactApp>
<ErrorBoundary>
<ChatContent />
</ErrorBoundary>
</MyReactApp>

现在 ChatContent 中的任何错误都将被 ErrorBoundary 捕获,让您有机会像这样呈现回退:

Oops! Something went wrong:
ReferenceError: test is not defined

关于javascript - 如何让 react Electron 忽略未定义的错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53312022/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com