在渲染进程,也就是窗口上面可以通过 remote 来控制主进程上的东西,比如去创建一个窗口 .. remote 就是渲染进程跟主进程之间的一种通信的方法..
现在这个模态窗口我打算在渲染进程上去创建 .. 打开 main_window.html .. 在这组 script 标签里面,先把 remote .. 从 electron 模块里拿出来用一下 ..
创建窗口用的是 BrowserWindow .. 下面可以再把这个 BrowserWindow 从 remote 里面拿出来用一下 ..
在这个 window 模块里面 .. 把创建这个子窗口的代码剪切下来 .. 去掉这个 childWindow ..
把创建窗口的代码放在 main_window.html 这个文档里面 .. 这里再添加一个 childWindow ..
这个窗口的 parent 选项设置的是窗口的父窗口 .. 现在这个父窗口应该就是当前窗口 .. 上面添加一个 mainWindow .. 用一下 remote 上的 getCurrentWindow 方法获取到当前窗口 .. 然后把 parent 的值换成 mainWindow ..
重新运行一下应用 ..
这里并没有显示模态子窗口 .. 可以打开开发者工具检查一下 .. 上面显示 remote 上这个方法不存在 .. 因为我输错了这个方法的名字 .. getCurrentWindow ..
重新再运行一下应用 ..
这次会在主窗口的上面打开一个模态类型的子窗口 .. 现在这个子窗口是我们在渲染进程上创建的 ..