Vue Vuex基础笔记

刚开始接触vuex,再vuex首页就看到这么一段话

 

 很显然,我就是为了开发复杂的单页应用所以用到vuex,方便不同组件间传值。更准确的说我就是为了开发复杂的地图应用页面,而选择了vue。

Vuex提供五种核心的状态:

  • state:存储状态(变量),和Redux类似,Vuex中的公共属性放在state中
  • getters:对数据获取之前的再次编译,可以理解为state的计算属性。我们在组件中使用 $sotre.getters.fun()
  • mutations:修改状态,并且是同步的。在组件中使用$store.commit('',params)。这个和我们组件中的自定义事件类似。
  • actions:异步操作。在组件中使用是$store.dispath('')
  • modules:store的子模块,为了开发大型项目,方便状态管理而使用的。

Store文件

Vue.use(Vuex);

const mapOnline = {
  state: {
    map: {},
    title: "嘉兴·天地图"
  },
  mutations: {
    setMap(state, map) {
      state.map = map;
    },
    setTitle(state,value) {
      state.title = value;
    }
  },
  actions: {},
  getters: {}
};

export default new Vuex.Store({
  modules: {
    mapOnline
  }
});

 调用

    this.$store.commit('setTitle','111');
   
    console.log(this.$store.state.mapOnline.title)

 

posted @ 2019-10-08 14:33  咖啡漩涡  阅读(186)  评论(0编辑  收藏  举报