Electron使用loadURL时,注入脚本挂载到window全局变量

Electron使用loadURL加载网页后,自动执行一段简单的脚本,在window全局对象上挂载一个参数:

window.cpury_platform = 'pc_macos';

Electron主入口创建窗口处使用BrowserWindow下方法webContents.executeJavaScript,示例代码:

const createWindow = () => {

    const mainWindow = new BrowserWindow({
        width: 800,
        height: 600,
        webPreferences: {
            preload: path.join(__dirname, 'preload.js')
        }
    })

    mainWindow.loadURL('https://cpury.com')
    mainWindow.webContents.executeJavaScript("window.cpury_platform = 'pc_macos';");
}

如此,在目标网页脚本中便可使用上面自定义的变量:

console.log(window.cpury_platform); // 输出:pc_macos

(版权归cpury.com所有,转载请注明出处。)