需求:应用在使用过程中,在后台更新应用的背景图片,这时候应用接收更新推送后实现背景图片的下载和实时更新视图。
难点:
1、图片下载
2、无感刷新背景图片
3、websocket推送
项目架构:Electron + Vue编译后dist文件作为渲染进程视图
解决思路:
1、Vue项目中配置websocket推送监听
// 初始化weosocket
function initWebSocket () {
let wsurl = `${type}://${url}/xxxxx/websocket?code=${code唯一标识}`
if (websocket) {
websocket.close()
websocket = null
}
websocket = new WebSocket(wsurl)
websocket.onmessage = websocketonmessage
websocket.onopen = websocketonopen
websocket.onerror = websocketonerror
websocket.onclose = websocketclose
}
// 连接成功事件
function websocketonopen () {
console.log('连接成功,开启心跳')
reconnectCount = 0 // 重