Electron [1]允许通过编写网页来构建桌面程序,使得开发桌面软件变得异常轻松,各类通过 Electron 开发的软件层出不穷。此文主要针对网页里的 QQ 临时会话按钮,使用 Electron 应该如何优雅地操作呢?
QQ 临时会话
虽然我现在已经很少上 Q,但不得不说,QQ 临时会话是很方便的一个功能。它允许在网页里添加一条链接点击直接弹出 QQ 会话。
可直接在 QQ 推广[2]中登录并生成链接,格式如:
http://wpa.qq.com/msgrd?v=3&uin={ {uin}}&site=qq&menu=yes
若是在网页中引入,可直接加上新窗口打开但属性,如:
又或者可以直接使用 tencent 协议的链接来发起临时会话,链接如 tencent://message/?uin=10000,则 HTML 如下:
QQ 交谈
Electron 与 QQ 临时会话
在 Electron 中,如若直接采用网页中的方式,点击链接将会在新的窗口中打开,而且你无法控制它,这明显不是我们想要的。
Electron 有个 shell[3] 模块,可提供使用默认浏览器中打开链接的功能,如:
const { shell } = require('electron')
shell.openExternal('t