nuxt 登录状态持久化

在plugins目录下添加一个cache.js

export default function(ctx) {
  //离开页面 刷新前 将store中的数据存到localStorage
  window.addEventListener('beforeunload', () => {
    sessionStorage.setItem("token", JSON.stringify(ctx.store.state))
  });
  // 获取localStorage中的store数据
  let storeCache = sessionStorage.getItem("token")
  if (storeCache) {
    // 将localStorage中的store数据替换到store中
    ctx.store.replaceState(JSON.parse(storeCache));
  }
}

  

在nuxt.config.js中添加

plugins: [
   {src:'~/plugins/cache',ssr:false}
  ],

  

posted @ 2020-10-13 11:10  惠鹏曦  阅读(1022)  评论(1编辑  收藏  举报