日报_19

97 阅读2分钟

2020年5月21日 星期四

今天主要学习了一个Vuex,Vuex呢是一个专为 Vue.js 应用程序开发的状态管理模式。它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化。我们呢主要在开发大型的项目的时候才会使用它,如果您不打算开发大型单页应用,使用 Vuex 可能是繁琐冗余的。确实是如此——如果您的应用够简单,您最好不要使用 Vuex。

Vuex 的目的是为了管理共享状态,为了达到这个目的,它制定了一系列的规则,比如修改数据源 state、触发 actions 等等,都需要遵循它的规则,以此来达到让项目结构更加清晰且易于维护的目的。 每一个 Vuex 应用的核心就是 store(仓库)。store 基本上就是一个容器,它包含着你的应用中大部分的状态 (state)。

vuex的使用流程:

在vue的组件中通过dispatch来调用actions中的方法,在actions中通过commit来调用mutations中的方法,在mutations中可以直接操作state中的数据,只要state中的数据发生改变就会立刻响应到咱们的组件中。(附Vuex的流程图一份)

Vuex的下载:

npm install vuex --save

vuex的核心概念:

state:是仓库 也就是储存数据的   相当于银行的金库
    在组件中使用state中的数据 { this.$store.state }

mutations: 是唯一可以修改vuex中数据的选项。每个方法都有一个回调函数,回调函数有一个形参

state 也就是咱么state中的数据
           在组件中触发mutations中的方法{ this.$store.com    mit("方法名字",参数)  }
           
actions: 不能直接修改状态值调用mutations的方法 mutations修改状态值   可以包含异步操纵
         在组件中触发actions的方法:{ this.$store.dispatch("方法名",参数) }
         
getters: 类似我们的计算属性   可以针对state中的数据做一些逻辑计算
         在组件中使用方法:{ this.$store.getter.方法名 }
         
Module: Vuex 允许我们将 store 分割成模块(module)。每个模块拥有自己的

state、mutation、action、getter、甚至是嵌套子模块——从上至下进行同样方式的分割。