如果React组件中发生中断错误,则整个页面都会崩溃。例如,如果x
为空,而您尝试访问x.someProperty
,则会出现错误,整个页面将变为白色。这与并非完全在JS上运行的老式应用程序有点不同,因为即使JS错误并阻塞了页面的某些方面,标记(HTML&CSS)仍然存在。
有没有办法用React减轻这种情况?类似于将组件包装在try / catch中,以便如果出现问题,则 only 该组件将失败,并且仅页面的该部分变为白色,而不是整个页面。我不确定是否有比在try / catch中实际包装功能组件的代码整体更好的模式。
我想我对这里的功能组件特别感兴趣,但是基于类的答案可能对其他人有用。