好记性不如烂笔头

demo预览

源代码

前情提要

关于vuex,其实很久以前就研究使用过,还研究过 flux,redux之类的体系,当时感觉对于 state,action,dispatch,views等这套体系流程已经很了解,结果呢近一年不用,再次证明了人类大脑的局限性。这里不做任何文档教程,因为官网文档已经很详细,这里只谈理解和注意点。

vuex核心

五大核心属性:

  • State
  • Getters
  • Mutations
  • Actions
  • Modules

四大辅助函数

  • mapState
  • mapGetters
  • mapActions
  • mapMutations

运行流程

  • State是数据data的存储仓库,可划分为子模块module,每个module有自立的上下文对象context,有自己的state、mutation、action、getters、modules等等体系

  • Getters 主要用来从State中获取数据,优点是具有通用性

  • Mutations 是用来更新state状态仓库里的数据的,唯一更改数据地方,实时同步修改,不能异步,不能异步,不能异步

  • Actions 主要补充增加 异步更新 state仓库数据的功能,内部依然是触发Mutation来实现

  • Modules 为了划分state模块,便于管理数据仓库

注意:Getters,Mutations,Actions无论是不是在module块中,都会直接挂载到 vuex的实例 store上,只有state保持链式命名空间,比如,store.state.module[key]等等,所以如果是子模块的state,直接用辅助函数mapState是获取不到的.

最新文章

  1. CMake命令/函数汇总(翻译自官方手册)
  2. sql server 怎么实现mysql中group_concat,列转行,列用分隔符拼接字符串
  3. 【我的产品观】开发wangEditor一年总结
  4. 全选,不选,反选js
  5. 请叫我机智-巧用ios朗读kindle图书
  6. 【hello,world 也打脸】记storm-starter在某知名IDE下的悲催调试经历
  7. iOS - OC NSPoint 位置
  8. Apache网站根目录
  9. 图解server端网络架构
  10. jq选择器对象筛选
  11. C# 文件上传(可以多文件上传)
  12. RB-Tree删除详解
  13. PHP-高并发和大流量的解决方案
  14. 判断以xx开头的字符串
  15. Python:Day41 http、css
  16. ubuntu下无法在目录下创建文件夹,权限不足解决办法
  17. 集合之LinkedHashMap(含JDK1.8源码分析)
  18. C#词频统计 效能分析
  19. Vue之双向绑定原理动手记
  20. ARP协议详解之Gratuitous ARP(免费ARP)

热门文章

  1. Moravec算子
  2. mysql 经常使用命令整理总结
  3. Redis学习笔记3-Redis5个可运行程序命令的使用
  4. Android中通过反射来设置Toast的显示时间
  5. URAL 题目1553. Caves and Tunnels(Link Cut Tree 改动点权,求两点之间最大)
  6. Cocos2d-X中的ProgressTimer
  7. 使用Docker部署Gitlab
  8. has实现 更新视图但不重新加载页面原理
  9. 20170623_oracle_优化与体系结构
  10. Array.Copy vs Buffer.BlockCopy