gpt4 book ai didi

electron - 创建多个窗口

转载 作者:行者123 更新时间:2023-12-02 08:19:45 26 4
gpt4 key购买 nike

我正在使用 Github Electron 和 Angular 1.x 构建桌面应用程序。我需要先创建一个登录窗口,登录成功后,我想显示/实例化主/实际应用程序窗口。

我们如何销毁当前的 Electron 窗口实例并从 AngularJS JavaScript Controller 创建一个新的窗口实例?

最佳答案

我的第一个建议是不要有多个窗口,而是有多个路由。要在 angular 1.x 中执行路由,请查看 angular-ui-router .

使用路由,您将使用同一窗口并更改在同一窗口内运行的应用程序的状态。

不过,您也可以通过简单地创建多个 BrowserWindow 对象或多次调用同一窗口上的 loadURL 来拥有多个窗口。

登录完成后,您可以使用 ipc 与主进程通信。模块,以触发所需的行为。

// main.js (main process)
const {app, BrowserWindow, ipcMain} = require('electron')

app.on('activate', () => {
var win = new BrowserWindow()
win.loadURL(`file://${__dirname}/login.html`)

ipcMain.on('login-success', () => {
win.loadURL(`file://${__dirname}/index.html`)
})

})

然后在您的渲染过程中发送回 login-success 消息。

// login.js (render process)
var {ipcRenderer} = require('electron')

ipcRenderer.send('login-success') // call this after the user logs in

关于electron - 创建多个窗口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38414105/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com