1,达到的目的
全局状态管理
2,使用这种方式的好处
(1).解耦:将所有数据相关的逻辑放入 store(也就是 MVC 中的 Model,换了个名字而已)
(2)数据读写更方便:任何组件不管在哪里,都可以直接读写数据
(3).控制力更强:组件对数据的读写只能使用 store 提供的 API 进行(当然也不排除有猪队友直接对 tagList 和 recordList 进行 push 等操作,这是没有办法禁止的)
2,所包含的文件和内容
main.ts
store/index2
xxx.d.ts
3,代码
main.ts
Vue.prototype.$store2=store
//项目中存在store这个对象
store/index2
....
const store2={
....
}
...
export default store2
xxx.d.ts
import Vue from 'vue';
/**XXX.d.ts中有import 的话其他申明的类型使用使就需要import,没有importd的话就默认是自动引用的,所以这个文件需要单独放在一个d.ts文件中,这样就不影响其他声明类型的使用
**/
declare module 'vue/types/vue'{
interface Vue{
$store2 : any
}
}