# 总结
实例化 Vuex 的 Store 是 Vuex 的核心流程之一,这个过程涉及到 Store 类的构造函数和 Vuex 的一些初始化操作。
主要步骤如下:
创建一个新的
Store实例,传入预定义的选项,如state、mutations、actions、getters等。在
Store的构造函数中,首先处理并注册所有的modules,形成一个树状的module结构。然后将state和getters初始化,并将mutations和actions注册到Store中。创建一个新的 Vue 实例
_vm用于存储state和getters。state会被设置为 Vue 实例的data,而getters则会被设置为 Vue 实例的computed属性,这样利用了 Vue 的响应式系统,可以实现state的响应式以及getters的计算和缓存。如果 Vuex store 启用了严格模式,那么对
state的修改只能通过mutation,否则会抛出错误。这是通过监听_vm实例的data属性变化来实现的。在实例化
Store后,你就可以调用Store的方法如dispatch、commit等来改变state或触发actions,也可以通过store.state和store.getters来获取状态和计算属性。
在这个过程中,Vuex 将 state、mutations、actions 和 getters 结构化管理,利用 Vue 的响应式系统实现了 state 的响应式和 getters 的计算和缓存,同时还提供了一些方便的方法来操作和读取 state。
← 初始化 store._vm 数据获取 →