vuejs:从 vuex 调用多个动作的最佳方式
vuejs : best way to call multiple actions from vuex
我正在做一个使用 Vue js 和 electron 的项目。为了管理我使用 vuex 的状态。
我至少有 15 个动作要在一个 Vue 文件中调用。
methods: {
...mapActions('Store1', ['FETCH_AB']),
...mapActions('Store2', ['FETCH_DS']),
...mapActions('Store3', ['FETCH_SD']),
...mapActions('Store4', ['FETCH_XD']),
...mapActions('Store5', ['FETCH_SD']),
...mapActions('Store6', ['FETCH_AZ'])
}
我不知道这是不是最好的方法,因为在我创建的方法中,我有:
async mounted(){
this.FETCH_AZ()
this.FETCH_DS()
....
}
这是让我的程序正常运行的好方法吗?
创建一个新的特殊操作,它将dispatch
所有其他操作:
actions: {
FETCH_AB: () => {
// ...
},
FETCH_DS: () => {
// ...
},
FETCH_SD: () => {
// ...
},
// Rest of the actions...
FETCH_ALL: ({ dispatch }) => {
// Dispatch all the actions here
dispatch('FETCH_AB');
dispatch('FETCH_DS');
dispatch('FETCH_SD');
//...
}
}
我正在做一个使用 Vue js 和 electron 的项目。为了管理我使用 vuex 的状态。 我至少有 15 个动作要在一个 Vue 文件中调用。
methods: {
...mapActions('Store1', ['FETCH_AB']),
...mapActions('Store2', ['FETCH_DS']),
...mapActions('Store3', ['FETCH_SD']),
...mapActions('Store4', ['FETCH_XD']),
...mapActions('Store5', ['FETCH_SD']),
...mapActions('Store6', ['FETCH_AZ'])
}
我不知道这是不是最好的方法,因为在我创建的方法中,我有:
async mounted(){
this.FETCH_AZ()
this.FETCH_DS()
....
}
这是让我的程序正常运行的好方法吗?
创建一个新的特殊操作,它将dispatch
所有其他操作:
actions: {
FETCH_AB: () => {
// ...
},
FETCH_DS: () => {
// ...
},
FETCH_SD: () => {
// ...
},
// Rest of the actions...
FETCH_ALL: ({ dispatch }) => {
// Dispatch all the actions here
dispatch('FETCH_AB');
dispatch('FETCH_DS');
dispatch('FETCH_SD');
//...
}
}