我应该在Vuex操作上使用vue-resource吗?

Should I use vue-resource on Vuex actions

本文关键字:vue-resource Vuex 操作上 我应该      更新时间:2023-09-26

我正在开发一个web应用程序,它从后端获取机场。我还使用Vuex来共享状态和数据。我的问题是,我应该在我的VueX操作中加载机场,还是在我的vue实例方法中加载机场,然后调用只调度事件的操作

例子
// ajax from vuex actions
export const loadAirports = ({dispatch})=>{
    //load data via vue-resource
    dispatch("SET_AIRPORTS",data);
}

//action
export const setAirports(({dispatch},airports) =>{
   dispatch("SET_AIRPORTS",airports);
}
new Vue({
    ready(){
        //load data view-resource
        this.setAirports(data); 
    }
})

突变应该始终是同步的。但是在action中使用ajax是可以的,事实上,许多官方示例都是这样做的。我会写

import {loadAirports} from './actions.js'
new Vue({
  vuex:{
    actions: {
      loadAirports
    },
    getters: {
      airports: state => state.airports
    }
  },
  ready(){
    this.loadAirports();
  }
});