2017-01-23 267 views
1

我想在我的Electron App中添加后退和前进导航按钮到我的browserWindow,但尽管Firefox和Chrome在我们使用后退导航时,任何表单输入都会重新加载带有Electron webview的缓存数据goBack()函数每次都清除这些。是否有任何设置,选项或保持数据的方式......Electron WebView后退按钮清除表格

回答

1

目前还不清楚。

电子documentation没有明确说明Electron是否实现了所谓的BFCache或HistoryLists。 电子源代码也不清楚。我在Github上创建了相关的issue

电子使用铬实施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节点并存储序列化文件。

欲了解更多信息检查:

+0

我感谢你的答案,strengthenmy有关意见。我开始用localstorage编写我自己的代码测试,但在关闭浏览器时将使用sessionstorage清除。由于用Electron编写的Brave浏览器得到了与使用后退按钮恢复表单状态的Chrome相同的行为,因此确实有解决方案。无论如何,在花费足够的时间之后,我选择解决方案解决方案。 –