什么是vuex?他有什么作用?如何改变store中的状态(state)?

Posted edczjw-edison

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了什么是vuex?他有什么作用?如何改变store中的状态(state)?相关的知识,希望对你有一定的参考价值。

vuex是一个专为vue.js应用程序开发的状态管理模式。vuex解决了组件之间同一状态的共享问题。
        当我们的应用遇到多个组件之间的共享问题时会需要
        状态管理核心状态管理有5个核心,分别是state、getter、mutation、action以及module。
    1.state
        state为单一状态树,在state中需要定义我们所需要管理的数组、对象、字符串等等,只有在这里定义了,
        在vue.js的组件中才能获取你定义的这个对象的状态。
    2.简单的 store 模式
    var store = { 
        debug: true, 
        state: { 
        message: ‘Hello!‘ 
    }, 
    setMessageAction (newValue) {
         if (this.debug) 
         console.log(‘setMessageAction triggered with‘, newValue) 
         this.state.message = newValue 
     },
      clearMessageAction () { 
          if (this.debug) console.log(‘clearMessageAction triggered‘) this.state.message = ‘‘ 
      } 
     }
     
     所有 store 中 state 的改变,都放置在 store 自身的 action 中去管理。
     这种集中式状态管理能够被更容易地理解哪种类型的 mutation 将会发生,以及它们是如何被触发。
     当错误出现时,我们现在也会有一个 log 记录 bug 之前发生了什么。
     
     此外,每个实例/组件仍然可以拥有和管理自己的私有状态:
     var vmA = new Vue({ 
         data: { 
         privateState: {}, 
         sharedState: store.state 
         } 
     }) 
     var vmB = new Vue({ 
         data: { 
         privateState: {}, 
         sharedState: store.state 
         } 
     })

 

以上是关于什么是vuex?他有什么作用?如何改变store中的状态(state)?的主要内容,如果未能解决你的问题,请参考以下文章

为什么Vuex内数据改变了而组件没有进行更新?

vuex的基本使用

Vuex 突变和操作不起作用

vue学习指南:第十五篇(详细) - Vuex

Vuex

Vuex刷新时数据会消失,那如何解决?为什么还要使用Vuex