[b]1.Vuex是什么?[/b]
[b]学院派:[/b][code]Vuex [/code]是一个专为 [code]Vue.js [/code]应用程序开发的状态管理模式;集中存储和管理应用的所有组件状态。
[b]理解:[/b]以上这4个词是我们理解的关键。状态:什么是状态,我们可以通俗的理解为数据。[url=https://cn.vuejs.org/v2/guide/#Vue-js-%E6%98%AF%E4%BB%80%E4%B9%88]Vue只关心视图层[/url],那么视图的状态如何来确定?我们知道是通过数据驱动,这里的状态管理可以简单理解为管理数据。集中存储:[code]Vue[/code]只关心视图,那么我们需要一个仓库([code]Store[/code])来存储数据,而且是所有的数据集中存储,视图和数据就可以分析。管理:除了存储,还可以管理数据,也就是计算、处理数据。所有组件状态:所用的组件共用一个仓库([code]Store[/code]),也就是一个项目只有一个数据源(区分模块[code]modules[/code])。
[b]总结:[/b]Vuex就是在一个项目中,提供唯一的管理数据源的仓库。
[b]2.有什么用?使用场景?
[/b]
场景一:处理多组件依赖于同一个数据,例如有柱状图和条形图两个组件都是展示的同一数据;
场景二: 一个组件的行为——改变数据——影响另一个组件的视图,其实也就是公用依赖的数据;
[code]Vuex[/code]将组件公用数据抽离,在一个公共仓库管理,使得各个组件容易获取([code]getter[/code])数据,也容易设置数据([code]setter[/code])。
[b]3.源码初览[/b]
这是[code]Vuex[/code]的源码文件,总共包含五大部分,[code]Plugins[/code]两个注入文件,核心文件[code]index[/code],帮组文档[code]helper[/code],工具文件[code]util.js[/code]
[code][img]http://files.jb51.net/file_images/article/201704/2017041914345629.png?2017319143529[/img]
[/code]
我们先看看Index.js文件export的框架,后面具体分析。
export default {
Store,
install,
mapState,
mapMutations,
mapGetters,
mapActions
}
后面文章分析[code]Store[/code]仓库。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程素材网。