你想想,我们很多时候打开的是远程的网页地址。 如果返回的状态码是404,明显不是我们想要的,如果我们依据did-fail-load事件去判断,是否加载失败,当然是不满足我们的需求的。
我们需要在远程加载失败的时候,使用本地的默认页面去给用户一些提示信息,以及可以关闭窗体。
这个时候就要did-frame-navigate出场,根据httpResponseCode的状态去使用本地备用页面了。
win.webContents.on("did-frame-navigate", (event: Electron.Event, url: string, httpResponseCode: number, httpStatusText: string, isMainFrame: boolean, frameProcessId: number, frameRoutingId: number) =>{ console.log("did-frame-navigate", httpResponseCode, httpStatusText); if(httpResponseCode >= 400 && !this.isUsedFailedPage){ return this.useFailedPage(); } }); 结语到这里,老板已经走到我的身后,我默默的说,我总结一下问题。
老板说: 好样子的,不过你为嘛在上班时间写博客。
我: 流汗,各位,拜。
electron-util 工具类
electron-router