Open leopen-hu opened 6 years ago
:ref
定位子组件后调用对应函数├── src/
│ ├── api/
│ │ ├── index.js
│ │ ├── api.js // 对 axios 的简单封装
│ │ └── common-data.api.js // 公用 api,可以根据接口,特性等划分
│ ├── components/
│ │ ├── index.js // 注册公用组件
│ │ └── one-common-component.vue //公用组件
│ ├── router/
│ │ └── index.js // 总路由,注册局部路由
│ ├── utils/
│ │ └── utils.js // 公用方法
│ ├── views/
│ │ ├── view-first/
│ │ │ ├── view-first.vue // 父容器,内含一个 router-view 用来加载模块下的不同页面组件
│ │ │ ├── view-first-list.vue // 列表页
│ │ │ ├── view-first-detail.vue // 详情、编辑、新增页(也可以拆分)
│ │ │ ├── view-first.router.js // 局部路由
│ │ │ ├── view-first.api.js // 局部 api
│ │ │ └── store/
│ │ │ ├── view-first.js // 局部store,需要注册到 vuex 的总 sotre
│ │ │ └── mutation_types.js
│ ├── vuex/
│ │ │ ├── store.js // 总 store,注册局部 store,公用数据 store
│ │ │ ├── actions.js
│ │ │ ├── getters.js
│ │ │ ├── mutation_types.js
│ │ │ └── modules/
│ │ │ └── common-data.js // 公用数据 store 过大时可以拆分成不同的 module
│ ├── App.vue
│ └── main.js
└── index.html
created () {
Promise.all([
this.getCommonData({
types: ['corporation', 'enum', 'businessPartner', 'currency', 'user', 'businessPlate', 'planSubject']
}),
this.getDepartmentList({})
])
},
methods: {
...mapActions(['getCommonData', 'getDepartmentList'])
}
使用 vuex 不合理。
{ strict: false }
,意味着并没有放开 dev 环境下 vuex 严格模式,因此没有报错。导致实际上对于 vuex 的使用基本上是违反了原则的,即没有保证数据更改的方法唯一性。对于项目的预估不足。
技术选型