zoukankan      html  css  js  c++  java
  • 解决Vuex持久化插件-在F5刷新页面后数据不见的问题

    解决Vuex持久化插件-在F5刷新页面后数据不见的问题

    在以前的开发中, 我们总是习惯于放在浏览器的sessionStorage和localStorage中。但是用了vue后,vuex便可以被应用了。
    • 优点:vuex相对sessionStorage,存储数据更安全,sessionStorage可在浏览器控制台看到
    • 缺点:在F5刷新页面后,vuex会重新更新state,所以,存储的数据会丢失。
    解决方案: 使用vuex-persistedstate插件
    原理:
    1. 将vuex的state存在localStorage或sessionStorage或cookie中一份
    2. 刷新页面的一瞬间,vuex数据消失,vuex回去sessionStorage中哪会数据,变相的实现了数据刷新不丢失
    使用:
    安装
    npm install vuex-persistedstate  --save
    引入及配置
    在store下的index.js中
    import createPersistedState from "vuex-persistedstate"
    const store = new Vuex.Store({
    // ... plugins: [createPersistedState()]
    })

    想要存储到sessionStorage,配置如下:

    import createPersistedState from "vuex-persistedstate"
    const store = new Vuex.Store({
      // ...
      plugins: [createPersistedState({
          storage: window.sessionStorage
      })]
    })
    vuex-persistedstate默认持久化所有state,指定需要持久化的state,配置如下:
    import createPersistedState from "vuex-persistedstate"
    const store = new Vuex.Store({
      // ...
      plugins: [createPersistedState({
          storage: window.sessionStorage,
          reducer(val) {
              return {
              // 只储存state中的user
              user: val.user
            }
         }
      })]

    注意:如果此刻想配置多个选项,将plugins写成一个一维数组,不然会报错。

    import createPersistedState from "vuex-persistedstate"
    import createLogger from 'vuex/dist/logger'
    // 判断环境 vuex提示生产环境中不使用
    const debug = process.env.NODE_ENV !== 'production'
    const createPersisted = createPersistedState({
      storage: window.sessionStorage
    })
    export default new Vuex.Store({
     // ...
      plugins: debug ? [createLogger(), createPersisted] : [createPersisted]
    })
    复制代码
  • 相关阅读:
    centos7 yum安装配置Lnmp和负载配置
    Linux搭建lamp(Apache+PHP+Mysql环境)centos7.2版详细教程
    php的移位符运算
    Mysql的注入与防御
    介绍10个非常有用的PHP函数
    PHP性能的分析
    Netty 4源码解析:服务端启动
    centOS6.6升级gcc4.8
    kafka 0.8.x producer Example(scala)
    spark standalone zookeeper HA部署方式
  • 原文地址:https://www.cnblogs.com/qinmanyu/p/11208995.html
Copyright © 2011-2022 走看看