问题描述
我正在尝试在电子应用程序中实现libp2p,该应用程序(显然)已打开了节点支持。
const errorHandle = `
window.onerror = (err) => {
console.log(err);
};
process.on("uncaughtException",function (err) {
console.log(err);
});
process.on("unhandledRejection",function (err) {
console.log(err);
});
console.log("Injected startup code")`
await mainWindow.loadFile("./public/index.html");
await mainWindow.webContents.executeJavaScript(errorHandle);
但是,如果我有意或无意中引发了错误,则应用程序将崩溃并重新加载,并且我看不到该错误,因为chrome devtools会清除其控制台,并打印出“ Devtools已断开连接”消息。 / p>
2个引发错误的示例:
console.error("test");
node.connect("INVALID_ADDRESS");
如何正确处理错误,以使电子(或节点)不会崩溃?
解决方法
事实证明,该错误已得到正确处理,但是该事件已连接到表单,默认情况下,该表单将在提交后刷新页面。我必须通过以下方式取消默认事件:
<form onsubmit="return false" on:submit={submit}></form>