如何在 atom-shell 中重置渲染器 javascript 上下文

How to reset the renderer javascript context in atom-shell

在标准浏览器中,加载新的 url 将重置 javascript 上下文。 IE。所有全局变量、编译函数和事件都将被清除,浏览器将以干净的状态启动。

然而,在 atom-shell 中,调用 mainWindow.loadUrl 将加载新的 html 文件,但它会使 javascript 上下文保持活动状态。因此,我需要删除的变量会一直存在。我如何告诉 atom-shell 在渲染器端清除整个 javascript 上下文?

查看 BrowserWindow.reload()WebContents.reload()

如果你在'renderer'这边,可以用remote.getCurrentWindow().reload()

https://github.com/atom/atom-shell/blob/master/docs/api/browser-window.md#browserwindowreload

如果你也想在浏览器端擦除 'javascript context',你需要取消引用 window 并创建一个新的 window。