vuecli项目中vuex的使用

2020-02-19  本文已影响0人  初见_JS

Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式,当我们的应用遇到多个组件共享状态时,可以引入vuex。

vuex核心store

vuex与全局对象的差异:

  • vuex 的状态存储是响应式的:store中状态改变,相应引用该状态的视图也会随之变化
  • 改变某一状态需提交 (commit) mutation

vuecli项目中vuex的简单使用

import Vue from 'vue'
import Vuex from 'vuex'

Vue.use(Vuex)

export default new Vuex.Store({
  state: {
    currentMap: null
  },
  mutations: {
    SET_CURRENTMAP: (state, currentMap) => {
      state.currentMap = currentMap
    }
  },
  /* actions: {
    SetCurrentMap({ commit }, currentMap) {
      commit('SET_CURRENTMAP', currentMap)
    }
  }, */
  getters: {
    map: state => state.currentMap
  },
  modules: {
  }
})

import { mapGetters } from "vuex";

computed: {
    ...mapGetters(["map"])
  },
watch: {
    map(val) {
      if (val) {
        Draw.init(val);
      }
    }
  }
上一篇下一篇

猜你喜欢

热点阅读