如何在 Electron 中保持多个子窗口打开?
Posted
技术标签:
【中文标题】如何在 Electron 中保持多个子窗口打开?【英文标题】:How to keep multiple subwindows open in Electron? 【发布时间】:2021-11-01 18:51:34 【问题描述】:我的应用结构概览:
主窗口(通过win.loadURL
加载,无权访问electron
)。
通过window.open(url, '_blank')
打开五个子窗口。
目前打开多个子窗口时,后打开的会替换前打开的,如何保持全部打开,而不是相互替换?
【问题讨论】:
您的window.open
电话到底是什么样的?你每次都传入相同的窗口名称吗?
@pushkin 都是window.open(url, '_blank')
的形式。阅读您的评论后,我尝试给他们不同的窗口名称,但没有成功。
嗯,这不应该发生。您是否在主窗口中启用了nativeWindowOpen: true
?
@pushkin 谢谢!指定nativeWindowOpen: true
后,子窗口可以保持打开状态,您可以为此发布答案。
@pushkin 此外,即使窗口名称都是_blank
,它也可以工作。
【参考方案1】:
更新:在 Electron 15 中,nativeWindowOpen
默认为 true
。
您应该在主窗口中启用nativeWindowOpen
。
new BrowserWindow( webPreferences: nativeWindowOpen: true )
然后,每个window.open
调用(假设您没有使用相同的窗口名称,不包括像'_blank'
这样的特殊窗口名称)将打开一个全新的窗口。
【讨论】:
以上是关于如何在 Electron 中保持多个子窗口打开?的主要内容,如果未能解决你的问题,请参考以下文章