为什么electron使用BrowserView时V8会崩溃?

最近在调研electron,在写demo的时候,发现一使用了BrowserView就会报错:开发者工具就会报:DevTools was disconnected from the page,Once page is reloaded,DevTools will automatically reconnect.具体提示信息如图:
image.png
代码,就是案例代码,还没有添加什么逻辑:

const { app, BrowserWindow,  BrowserView } = require("electron");
const path = require("path");

const createWindow = () => {
    const win = new BrowserWindow({
        width: 800,
        height: 600
    });
    const view = new BrowserView();
    win.setBrowserView(view);
    view.setBounds({
        x:0,
        y: 0,
        width: 800,
        height: 600
    });
    view.webContents.loadFile(path.join(app.getAppPath(), "./test/index.html"));
    win.webContents.openDevTools({
        mode: "right"
    });
}
app.whenReady().then(() => {
    createWindow();
})

只要使用了Browserview就会报错,直接使用BrowserWindow加载页面就没有问题。

阅读 4k
2 个回答

好像还没有很好的解决方案

openDevTools的时候,browserwindow还没有ready,去搜一下生命周期函数,在ready或者类似的的回调里面去openDevTools。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题