electron28.2.0版本内嵌iframe方案

iframe传给electron

parent.postMessage({ type: "getVersion" }, "*");

iframe监听electron传来的值
 

 const _this = this;
    window.addEventListener(
      "message",
      function (event) {
        if (event.data.type === "set-version") {
          _this.alertVersionMessage(event.data.data);
        }
        if (event.data.type === "get-screen-size") {
          _this.getScreenSize(event.data.data);
        }
      },
      false
    );

electron

const messageHandler = async (event) => {
 if (event.data.type === 'getVersion') {
    const electronVersion = await window.electron.getElectronVersion()

    console.log(`Electron version: ${electronVersion}`)
    let iframeWindow = document.getElementById('homeView').contentWindow
    const message = {
      type: 'set-version',
      data: electronVersion
    }
    iframeWindow.postMessage(message, '*')
  }
}

如果想使用electoren内置方法,在preload.js页面注入方法

getElectronVersion: async () => {
    return await ipcRenderer.invoke('get-app-version')
  }, // 添加获取Electron版本的方法

在electron的main.js里获取

  ipcMain.handle('get-app-version', () => {
    return app.getVersion()
  })

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值