千家信息网

javascript中的Electron如何使用

发表于:2025-01-25 作者:千家信息网编辑
千家信息网最后更新 2025年01月25日,这篇文章主要介绍"javascript中的Electron如何使用",在日常操作中,相信很多人在javascript中的Electron如何使用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作
千家信息网最后更新 2025年01月25日javascript中的Electron如何使用

这篇文章主要介绍"javascript中的Electron如何使用",在日常操作中,相信很多人在javascript中的Electron如何使用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"javascript中的Electron如何使用"的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

记一些Electron使用方法

安装

package.json 中添加electron 的依赖

"devDependencies": {    "electron": "12.0.5"  }

最好不要在前面添加 ^ ,因为要使用国内镜像下载electron包,同步不是很及时,会导致安装报网络404,想升级时去镜像网站找对应版本

electron 镜像

我使用的是这个 electron_mirror=https://mirrors.huaweicloud.com/electron/, 将这行代码加入到 .npmrc

扩展 window 对象的方法

const {app, BrowserWindow} = require('electron')const path = require('path')function createWindow() {    const appPath = app.getAppPath()    const _win = new BrowserWindow({        width: 800,        height: 600,        icon: path.join(appPath, 'assert/hqcs-mini.ico'),        webPreferences: {            contextIsolation:false, // 先记住这个,一会说这个            nodeIntegration: true, // 先记住这个,一会说这个            preload: path.join(app.getAppPath(), 'preload.js')  // 在这个 preload.js中扩展 window 对象        },        autoHideMenuBar: true    })        _win.loadURL("www.your_page.com").catch(function (e) {            console.log(e)        });    return _win}

preload.js

window.CustomApi = {} // 这样就可以了
  • 第一个重点

12.0.0 版本以后 contextIsolation 一定要设置为false ,原因看这里吧 , 否则即使你在 preload.js 中 扩展了 window 对象,也不可以在远程页面中访问

  • nodeIntegration 这个参数一定要为 true ,要不扩展 window对象也没什么意思,失去了调用本地接口的能力(不知道这里说的准确不)

关于两个进程通信的问题

12.0.0版本以后 要设置 e.returnValue 否则 有可能程序止住

到此,关于"javascript中的Electron如何使用"的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注网站,小编会继续努力为大家带来更多实用的文章!

0