Vuex:刷新浏览器时保留部分状态

时间:2017-11-12 20:54:24

标签: javascript vuejs2 state vuex page-refresh

我正在使用Vue和Vuex。我遇到了以下问题:当用户按下浏览器的“刷新按钮”时,Vuex存储中的状态将重置为其初始值。但是,我想保留这个州。更准确地说,我想只保留部分州,而不是整个州。

现在我知道有一个名为“vuex-persistedstate”的插件。就是这个:

https://www.npmjs.com/package/vuex-persistedstate

还有一个选项可以只保留部分州,但我不知道如何准确地做到这一点。例如,如果我们看一下jsfiddle

https://jsfiddle.net/robinvdvleuten/wmf8zvf8/

有一个名为“count”的变量。假设我们在状态中有另一个变量“newCount”,我想只保留newCount,但不计算。我需要编写什么而不是plugins: [createPersistedState()]

非常感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

浏览器刷新后,无法保留状态的任何部分。 为什么?因为它只是javascript,所以一切都会在刷新后重置。

如果要创建持久数据,则必须将其存储在某处。几种解决方案:

  1. 使用远程数据库
  2. 创建服务器会话
  3. 存储在浏览器本地存储(vuex-persistedstate默认解决方案)
  4. 存储在Cookie中
  5. 小心浏览器存储,一些用户禁用它,您必须管理隐私和安全策略。

相关问题