electron-vue 更新踩坑
新建一个update.js文件
首先引入electron-updater,没装的就npm install下
import { autoUpdater } from 'electron-updater'
//因为要和渲染器进程通信 所以引入
import { ipcMain } from 'electron'
const fs = require('fs-extra')
const path = require('path')
const log = require('electron-log') //日志打印方便查看
//定义状态
const MESSAGE = {
error: {
status: 0,
text: '检查更新出错'
},
checking: {
status: 1,
text: '正在检查更新……'
},
updateAva: {
status: 2,
text: '检测到新版本'
},
updateNotAva: {
status: 3,
text: '现在使用的就是最新版本,不用更新'
}
}
贴上主要代码
class Update {
//将该窗口对象作为参数
constructor(mainWindow) {
this.mainWindow = mainWindow
this.updaterCacheDir = 'xxxx' //更新下载产生的文件目录名 要与packjson 里的name 一致
this.uploadUrl = 'xxxx'; //更新服务器的地址
this.init()
this.onError()
this.onCheckUpdate()
this.onCheckFound()
this.onNoCheckFound()
this.onDownloadProcess()