【发布时间】:2017-06-08 04:48:05
【问题描述】:
我想在我的 Electron 应用程序中向我的 browserWindow 添加后退和前进导航按钮,但是尽管使用 Firefox 和 chrome,当我们使用后退导航时,任何表单输入都会重新加载缓存数据,使用 Electron webview 使用 goBack() 函数清除这些每次。是否有任何设置、选项或保存数据的方式....
【问题讨论】:
标签: webview electron browser-cache back
我想在我的 Electron 应用程序中向我的 browserWindow 添加后退和前进导航按钮,但是尽管使用 Firefox 和 chrome,当我们使用后退导航时,任何表单输入都会重新加载缓存数据,使用 Electron webview 使用 goBack() 函数清除这些每次。是否有任何设置、选项或保存数据的方式....
【问题讨论】:
标签: webview electron browser-cache back
不清楚。
Electron documentation 没有明确说明 Electron 是否实现了所谓的 BFCache 或 HistoryLists。 从 Electron 源代码中也不清楚。我在 Github 上创建了相关的issue。
Electron 使用 Chromium 来实现 BrowserWindow。 BFCache 和 Chromium 本身的情况还不是很清楚。有多个问题说明
BFCache 没有在 Chromium 中实现(455226 Chrome reinitializes all fields to the value they had on their initial presentation when history back is used,510340 Investigate faster back/forward page navigation)。虽然我在实践中看到 BFCache 可以在 Chrome 中使用。
您可以使用 JavaScript、sessionStorage 以及窗口加载和卸载事件来保存和恢复表单状态。但在这种情况下,您还需要一种机制来清楚地识别input 节点并存储序列化文件以防表单包含文件输入。
更多信息请查看:
【讨论】: