通过v-module来实现,原理就是利用了 Object.defineProperty() 这个方法重新定义了对象获取属性值(get)和设置属性值(set)的操作来实现的
vuex是一个专门为vue开发的状态管理模式
语法:
Object.defineProperty(obj, prop, descriptor)
其中:
obj —— 要在其上定义属性的对象
prop —— 要定义或修改的属性的名称。
descriptor —— 将被定义或修改的属性描述符
返回值:传递给函数的对象obj
descriptor包括数据描述符和存取描述符
value —— 该属性对应的值,默认值undefined
writable —— 布尔值,当设置为true时,该属性的value才能被赋值运算符改变,默认false
2)存储描述符具有的如下可选键值
get —— 一个给属性提供 getter 的方法,如果没有 getter 则为 undefined。当访问该属性时,该方法会被执行
set —— 一个给属性提供 setter 的方法,如果没有 setter 则为 undefined。当属性值修改时,触发执行该方法