Vuex
文章平均质量分 53
月丶基拉
这个作者很懒,什么都没留下…
展开
-
Vuex源码分析(五)-- actions
Vuex源码分析(五)-- actions官方描述源码分析构造函数storeinstallModulemakeLocalContext官方描述Action 类似于mutation,不同在于:Action 提交的是 mutation,而不是直接变更状态。Action 可以包含任意异步操作。让我们来注册一个简单的 action:const store = new Vuex.Store({ state: { count: 0 }, mutations: { increm原创 2021-01-20 21:07:01 · 465 阅读 · 0 评论 -
Vuex源码分析(四)-- mutations
Vuex源码分析(四)-- mutations官方描述源码分析构造函数storeinstallModulestore.commit()unifyObjectStyle总结官方描述更改 Vuex 的 store 中的状态的唯一方法是提交 mutation。Vuex 中的 mutation 非常类似于事件:每个 mutation 都有一个字符串的 事件类型 (type) 和 一个 回调函数 (handler)。这个回调函数就是我们实际进行状态更改的地方,并且它会接受 state 作为第一个参数:const原创 2021-01-08 19:32:04 · 154 阅读 · 0 评论 -
Vuex源码分析(三)-- getters
Vuex源码分析(三)-- getters官方描述源码分析构造函数StoreinstallModule关键代码一,`makeLocalContext`方法关键代码二,`module.forEachGetter`mapGetters 辅助函数总结官方描述首先来看看官方对getters 的描述。Vuex 允许我们在 store 中定义“getter”(可以认为是 store 的计算属性)。就像计算属性一样,getter 的返回值会根据它的依赖被缓存起来,且只有当它的依赖值发生了改变才会被重新计算。con原创 2021-01-07 16:03:36 · 303 阅读 · 0 评论 -
Vuex源码分析(二)-- state
Vuex源码分析(二)-- state首先总结state是Store实例的一个属性通过创建Store实例生成的state,根节点上的state始终包含全局state以及相应的模块名,不管子模块的namespaced是否为truenamespaced字段只影响[getters, mutations, actions] 的命名前缀const store = new Vuex.Store({ state: {a : 1}, // 这个state可以是一个对象,也可以是一个方法 modules:原创 2021-01-05 17:54:01 · 314 阅读 · 0 评论 -
Vuex源码分析(一)-- 插件注册
Vuex源码分析(一)-- 插件注册先说总结:Vue.use(Vuex),会给当前Vue组件的beforeCreate生命周期添加一个方法,这个方法会将在根节点引入的store对象,传入所有的子节点中这个store对象是通过 new Vuex.Store({}) 生成的;也可以是一个方法,用以返回Store对象然后通过 new Vue({store}) 在根节点引入然后看一下Vuex对象的属性结构export { Store, // sotre对象,用于构造store实例,new Sto原创 2021-01-05 14:41:26 · 135 阅读 · 0 评论 -
Vuex源码分析--序章
Vuex源码分析–序章Vuex 是一个专为 Vue 应用程序开发的状态管理模式。每个Vuex的核心是一个store,它采取自上而下的管理方式。有以下几个特点state 负责管理所有的数据,可以通过this.$store.state取值,不允许直接赋值getter 从state中派生出的一些状态,可以近似看做于Vue的computedMutations Vuex中更改store状态的唯一方法是提交mutations方法Actions actions是通过提交 mutations 修改数据,支持异步原创 2021-01-05 14:39:15 · 115 阅读 · 0 评论