token(数据)的持久化管理,借助插件vuex-persistedstate

  • token 需要做持久化存储方案一 :

    • vuex 配合 localStorage:

      • token 数据一式两份存储的原因:

        1. vuex 基于内存进行存储,速度快,但是刷新就会丢失,
        2. localStorage 基于磁盘进行存储,存取较慢,但是刷新不会丢失
      • vuex 和 localStorage 结合使用就能实现 token 的持久化存储

  • token 需要做持久化存储方案二 :

    • 使用插件完成 --> vuex-persistedstate

      • 在 vuex 中准备 user、cart 模块
      • 将插件配置到 vuex 的 plugins 选项中,配置 user、cart 模块进行状态持久化
      • 修改 state 数据就会触发自动同步机制,可以修改一下数据监测测试是否同步成功
      • 步骤: [文档: https://developer.aliyun.com/...]

        • 安装:npm i vuex-persistedstate
        • 在 src/store 文件夹下新建 modules 文件,在 modules 下新建 user.js 和 cart.js --> [src/store/modules/user.js]
      • 使用插件需要去到 store/index.js 的 plugins 下进行插件管理
      • 触发的机制: paths 中配置的模块中数据发生改变插件会自动帮助同步

  • 注意:

    • 数据持久化的实现默认是将数据存在 localStorage 中的,但是这个可以被定义
    • paths 用于指定持久化的数据对象,可以是整个模块,也可以指定单个数据 --> user.token
    • paths 中配置的模块中数据发生改变插件会自动帮助同步,执行的流程是:

      • 每次数据改变会将 vuex 的数据同步到 localStorage,然后刷新的时候将 localStorage 的数据同步到 vuex

你可能感兴趣的:(vue.jsvuex持久化)