首页 > 解决方案 > 如何从 executeJavaScript 获取返回值

问题描述

我正在使用电子,我需要像下面一样从 executeJavaScript 返回值,无论如何要获得身体的价值?感谢阅读

let mainWin;
function createMainWin(){
    mainWin = new BrowserWindow({
        width: 1920, 
        height:1080, 
        backgroundColor:'#ccc', 
        title:'Test',
        webPreferences: {
            nativeWindowOpen: true,
        }
    });

    mainWin.loadURL('https://example.com');
    mainWin.webContents.executeJavaScript(`
        var body = document.querySelector('body').innerHTML;//value need to get
        `
    )
    mainWin.webContents.openDevTools();
}

标签: javascriptelectron

解决方案


显然,正如我在docs中看到的,您可以使用then函数来获取它。

let mainWin;
function createMainWin(){
    mainWin = new BrowserWindow({
        width: 1920, 
        height:1080, 
        backgroundColor:'#ccc', 
        title:'Test',
        webPreferences: {
            nativeWindowOpen: true,
        }
    });

    mainWin.loadURL('https://example.com');
    mainWin.webContents.executeJavaScript(`
        document.querySelector('body').innerHTML; //value need to get
    `).then( (result) => {
        console.log(result);
    })
    mainWin.webContents.openDevTools();
}

推荐阅读