高频-说说vuex?

112 阅读1分钟
  • Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式 ,实际就是实现数据的共享数据管理。

  • 包含属性有

    • 1、state:vuex的基本数据,用来存储变量(后四个属性都是用来操作state里面储存的变量的)。

    • 2、getters:是对state里面的变量进行过滤的。

    • 3、mutation:提交更新数据的方法,必须是同步的(如果需要异步使用action)。

    • 4、action:和mutation的功能大致相同,不同之处在于:

      • Action提交的是mutation,而不是直接变更状态。 也就是action是用来修改mutation并提交的 而 mutation是通过修改state
      • Action可以包含任意异步操作。(一般比较复杂的数据都在action中操作)
      • action先会执行异步操作再去调用mutation,随后才跟新state
      • action用的不多,但是我们项目中用过
    • 5、modules:项目特别复杂的时候,可以让每一个模块拥有自己的state、mutation、action、getters,使得结构非常清晰,方便管理。

  • vuex还可以解决兄弟组件或者其它关系更复杂的一些组件间的传值问题

  • vue还为vuex提供了辅助函数

    • mapState
    • mapGetters
    • mapMutations
    • mapActions
  • vuex的实际应用场景

    • 某项目用vuex存了用户信息角色信息
    • 等等(可以自己补充)