2

它们在 Web 组件 (lit-html) 中是否像 React 中的错误边界一样。

4

1 回答 1

0

寻找等效的东西,我偶然发现了 Salesforce 的 LWC errorCallback()https ://developer.salesforce.com/docs/component-library/documentation/lwc/lwc.create_lifecycle_hooks_error

简单看一下实现,它需要抛出组件和错误边界的合作:组件将有自己的方法来捕获异常,然后向上遍历 DOM 树,直到找到错误边界(它将其标识为 LWC 组件——this本身是通过具有已知方法的字段完成的Symbol- 具有定义的errorCallback()方法);所以它只能在两个 LWC 组件之间工作。

为了使其跨组件框架工作,我想可以ErrorEvent从组件分派一个(这仍然需要组件处理它们的错误以分派该事件)并让它冒泡 DOM 树到将处理它的错误边界组件(和stopPropagation())。

于 2019-12-17T16:17:08.623 回答