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如何使用”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注创新互联网站,小编会继续努力为大家带来更多实用的文章!


标题名称:javascript中的Electron如何使用
URL地址:http://scyanting.com/article/pgsidp.html