vuex实现原理

Posted 竹千代

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了vuex实现原理相关的知识,希望对你有一定的参考价值。

一、Store的层次结构

Store,负责管理整个数据访问、修改等; 提高API;

State,数据结构;

所有的getters、mutations,全部都注册到store里;结构大概是: { \'xxx\':  [f1, f2] }

state是层层嵌套注册在根state中,结构大概是: {\'xxx\':  {\'yyy" : ......}}

 

二、getter.xxx,怎么可以每次拿到最新数据?

getter.xxx,映照的是一个函数。 每次拿属性getter.xxx的时候,都会代理到执行这个函数调用上

这个挺好理解,如果每次获取属性,都能拿到新值,是因为每次拿取,都会有一次重新的计算。

_vm[key],其实就是注册getters时候的函数

 

三、Action,怎么实现异步修改?

因为注册action,是用数组保存;由于action可能是异步执行,需要知道什么时候所有的action执行完毕。 

那么注册action函数的时候,就应该把所有函数封装成Promise

diapatch调用的时候, 用Promise.all([p1, p2....]),就可以知道执行完所有action的时候

 

http://blog.csdn.net/sinat_17775997/article/details/62231288

以上是关于vuex实现原理的主要内容,如果未能解决你的问题,请参考以下文章

Vuex原理实现

Vuex原理实现

了解Vuex4.x 简单实现原理

vuex实现原理

Vuex实现原理解析

快速理解 VUEX 原理