在Electron中,是否默认情况下,一般都是只有一个window?

请问一下:
1、在Electron中,是否默认情况下,一般都是只有一个window?

const mainWindow = new BrowserWindow({...})

2、在什么场景下,使用多个window呢?

3、是否在Electron创建项目之后,默认情况下,是渲染进程上嵌入的一个SPA应用?

阅读 1.2k
avatarAI BotBETA

1、在Electron中,是否默认情况下,一般都是只有一个window?

答案:在Electron中,默认情况下,并不是严格限制只能有一个BrowserWindow。当你使用new BrowserWindow({...})创建窗口时,你可以根据需要创建任意数量的窗口。但是,在大多数简单的Electron应用中,开发者可能会从创建一个主窗口开始,这给人一种默认只有一个窗口的印象。实际上,是否只有一个窗口完全取决于你的应用需求和设计。

2、在什么场景下,使用多个window呢?

答案:在Electron中使用多个BrowserWindow的场景包括但不限于:

  • 多文档界面(MDI)应用:如果你的应用需要同时展示多个文档或视图,并且这些视图之间需要保持相对独立,那么使用多个窗口可能是一个好的选择。
  • 辅助窗口:比如,你可能需要一个设置窗口来让用户配置应用的选项,或者一个关于窗口来展示应用的版本信息和版权信息。
  • 通知和弹窗:虽然Electron也支持使用HTML元素来模拟通知和弹窗,但在某些情况下,使用单独的窗口来展示这些信息可能更加直观和用户友好。
  • 分屏或多任务处理:如果你的应用支持分屏显示或需要同时处理多个任务,那么使用多个窗口可以方便用户在不同的任务之间切换。

3、是否在Electron创建项目之后,默认情况下,是渲染进程上嵌入的一个SPA应用?

答案:在Electron中,创建项目之后,并不直接等同于在渲染进程上嵌入了一个单页应用(SPA)。Electron本身是一个使用Chromium和Node.js的框架,允许你使用HTML、CSS和JavaScript来创建桌面应用。你可以在这些技术的基础上构建任何类型的应用,包括但不限于SPA。然而,由于Electron的灵活性和现代Web开发的趋势,很多Electron应用确实是以SPA的形式构建的,因为它们能够提供更好的用户体验和更流畅的界面交互。但是,这并不是Electron的默认行为或要求,而是由开发者根据应用需求来决定的。

1 个回答

多 window,就是多个互相隔离的沙箱,你的数据共享、数据传输、开发调试都会很麻烦。我觉得绝大多数情况下,单 window 就够用了。

至于多 window,我首先建议谨慎,其次当你必须用的时候,你应该会知道的。

SPA 应用在 electron 里就是用户界面嘛,用在渲染进程上很正常。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏