我正在使用Nuxtjs,我想获取一个属于我的状态的id并使用它来对API进行新的调用。
我的carInfo
有一个IdAddress,我想用来调用API。
我的商店:
export const state = () => ({
allCars: [],
carInfo: [],
carAddress: []
});
export const actions = {
async fetchAll({ commit }) {
let cars= await this.$axios.$get(
"apiaddress"
);
commit("setCars", cars);
},
async fetchcar({ commit }, id) {
let car= await this.$axios.$get(
"apiaddress"
);
commit("setcar", car);
},
async fetchAddress({ commit }, id) {
let address = await this.$axios.$get(
"apiaddress"
);
commit("setAddress", address);
}
};
操作处理程序接收一个上下文对象,该对象在商店实例上公开同一组方法/属性,因此您可以调用
context.commit
来提交变异,或者通过context.state
和context.getters
访问状态和getter。
然后它继续说他们经常使用argument destructuring这就是为什么行动的参数通常看起来像这样:{ commit }
。
在您的情况下,您可以将state
添加到参数,然后您应该能够从状态访问您的carInfo
值。
例如,将您的fetchAll
操作更改为:
async fetchAll({ commit, state }) {
let cars = await this.$axios.$get(
apistate.carInfo.IdAddress
);
commit("setCars", cars);
},