赞
踩
这里将Vuex的数据存储到localStorage中,具体看下面代码
1. 在plugins.js文件中创建 store-cache.js
2. 在nuxt.config.js 中代码如下
- plugins: [
- { src: '~/plugins/store-cache', ssr: false },
- ],
store-cache.js 文件代码如下
- export default function(ctx) {
- // 离开页面 刷新前 将store中的数据存到localStorage
- window.addEventListener('beforeunload', () => {
- localStorage.setItem("storeCache", JSON.stringify(ctx.store.state))
- });
- // 获取localStorage中的store数据
- let storeCache = localStorage.getItem("storeCache")
- if (storeCache) {
- // 将localStorage中的store数据替换到store中
- ctx.store.replaceState(Object.assign({},ctx.store.state,JSON.parse(storeCache))
- )
- }
- }
这样就解决了Vuex刷新数据丢失的问题了,实现了数据持久化
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。