vuex state刷新状态丢失

1、原因
因为store里的数据是保存在运行内存中的,当页面刷新时,页面会重新加载vue实例,store里面的数据就会被重新赋值。
2、解决方案

  • store.js
import Vue from 'vue'
import Vuex from 'vuex'
Vue.use(Vuex)

// 默认
const state = {
  name: localStorage.getItem("name"), //基本消息--姓名
}
// 事件
const mutations = {
  name(state, str) {//姓名
    localStorage.setItem("name", str);
    state.name = str;
  },
}
// 在加减之前 先加10
const getters = {}
// 异步
const actions = {
  setName(context,str){
    context.commit("name", str);
  }
}
export default new Vuex.Store({
  state,
  mutations,
  actions
})
  • 调用store
import store from '@store/index.js'
export default {
  store,
  mounted(){
    this.$store.dispatch('setName','张三')
  }
}
  • b.vue获取
import store from '@store/index.js'
export default {
  store,
  mounted(){
    console.log(this.$store.state)
    console.log(this.$store.state.name)
  }
}
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Swift1> Swift和OC的区别1.1> Swift没有地址/指针的概念1.2> 泛型1.3> 类型严谨 对...
    cosWriter阅读 11,174评论 1 32
  • 1.ios高性能编程 (1).内层 最小的内层平均值和峰值(2).耗电量 高效的算法和数据结构(3).初始化时...
    欧辰_OSR阅读 29,793评论 8 265
  • 1、通过CocoaPods安装项目名称项目信息 AFNetworking网络请求组件 FMDB本地数据库组件 SD...
    阳明AI阅读 16,033评论 3 119
  • 学校每周都会安排一节示范课。昨天,听了六年级的《把掌声分给她一半》。 张老师讲述了2016里约奥运会中国女排夺冠的...
    凉月西风阅读 272评论 0 2
  • 书在很多人眼中是知识的象征,那么书店便可以说是知识的集散地了。记得儿时买书时,见书如见嗜物,硬挤推搡入内,在书堆内...
    B612上的小橙子阅读 190评论 1 1