2016-08-18 4 views
1

Ich entwickle eine Webapp, wo es Flughäfen vom Back-End holt. Ich benutze auch Vuex, um Zustände und Daten zu teilen. Meine Frage ist, sollte ich die Flughäfen in meinem VueX Aktionen oder auf meinem vue Instanz-Methode laden dann die Aktion aufrufen, die nur das EreignisSollte ich Vue-Ressource auf Vuex-Aktionen verwenden

Beispiel

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

oder

//action 
export const setAirports(({dispatch},airports) =>{ 
    dispatch("SET_AIRPORTS",airports); 
} 

new Vue({ 
    ready(){ 
     //load data view-resource 

     this.setAirports(data); 
    } 
}) 

Antwort

3

Mutationen entsendet sollte immer synchron sein. Aber es ist in Ordnung, deine Ajax in Aktionen zu tun, genau so wird es in vielen der official examples getan. Ich würde tun

import {loadAirports} from './actions.js' 

new Vue({ 
    vuex:{ 
    actions: { 
     loadAirports 
    }, 
    getters: { 
     airports: state => state.airports 
    } 
    }, 
    ready(){ 
    this.loadAirports(); 
    } 
}); 
Verwandte Themen