VUE用electron打包怎么限制只启动一个应用

发布于 2022-09-12 02:09:09 字数 32 浏览 15 评论 0

VUE用electron打包怎么限制只启动一个应用

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

贪恋 2022-09-19 02:09:09
const gotTheLock = app.requestSingleInstanceLock()
if (!gotTheLock) { 
    app.quit() 
} 
else { 
    app.on('second-instance', (event, commandLine, workingDirectory) => {
        if (mainWindow) {
            if (mainWindow.isMinimized()) mainWindow.restore()
            mainWindow.focus()
        }
    })
    app.on('ready', () => {  /.../ }) 
}
浮生面具三千个 2022-09-19 02:09:09

你好,我遇到了一个问题,我想限制当前应用只打开一个,但是,我同时在程序中使用了,自动更新,但是自动更新安装的时候会出现问题,更新下载之后的程序无法正常安装。这个问题你遇到了吗?应该如何解决。。。

猫卆 2022-09-19 02:09:09

借楼主这里直接评论一下 不墨迹了直接上代码 这里只是一个实现思路 然后你在结合你的想要实现的方案 思路是一样的

let forceQuit =  process.platform  !==  'darwin';//声明一个变量 这里需要判断一下是mac端 因为windows mac处理不一样 如果你那边只是开发一端的话就无所谓了 这里我举的例子是两端都要兼容
brower.on('close', (e) => {
    //阻止默认事件的时候的时候判断意思是只有mac下才阻止
    if (!forceQuit) {
        e.preventDefault();
    }
});
  • 下面是自动更新部分 只有逻辑部分
autoUpdater.on('update-available', () => {
    //当发现一个可用更新的时候触发,设置变量为true
    forceQuit =  true;
    console.log('发现可用更新-自动下载');
})
// 下载完成后关闭软件安装
autoUpdater.on('update-downloaded', () => {
    //这里因为上面已经在发现新版本的时候设置 forceQuit为true所以现在是不会阻止默认事件的,这个时候杀掉软件重新打开就是最新版本了
    autoUpdater.quitAndInstall();
});
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文