十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
这篇文章主要介绍“javascript中的Electron如何使用”,在日常操作中,相信很多人在javascript中的Electron如何使用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”javascript中的Electron如何使用”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
创新互联专注于西和企业网站建设,响应式网站开发,成都做商城网站。西和网站建设公司,为西和等地区提供建站服务。全流程定制制作,专业设计,全程项目跟踪,创新互联专业和态度为您提供的服务
package.json 中添加electron 的依赖
"devDependencies": { "electron": "12.0.5" }
最好不要在前面添加 ^
,因为要使用国内镜像下载electron包,同步不是很及时,会导致安装报网络404,想升级时去镜像网站找对应版本
我使用的是这个 electron_mirror=https://mirrors.huaweicloud.com/electron/
, 将这行代码加入到 .npmrc
中
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如何使用”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注创新互联网站,小编会继续努力为大家带来更多实用的文章!