我希望在我的React应用程序中全局捕获错误。
但每次错误被捕获/转发两次到我的注册函数。
示例代码:
window.onerror = (msg, url, lineNo, columnNo, error) => {
console.log(msg)
alert(msg)
}
class TodoApp extends React.Component {
constructor(props) {
super(props)
}
render() {
return (
<button onClick={(e)=>{
console.log("clicked")
null.bla
}}>
Create an error
</button>
)
}
}
ReactDOM.render(<TodoApp />, document.querySelector("#app"))
这里有一个JS-fiddle:https://jsfiddle.net/dmxur0rc/4/
控制台仅显示了一个“clicked”日志,因此不是按钮触发两次,而是错误事件。