这是我的代码:
export const state = () => ({
products: []
});
export const getters = {
getProducts: state => {
return state.products;
}
};
export const mutations = {
SET_IP: (state, payload) => {
state.products = payload;
}
};
export const actions = () => ({
async getIP({ commit }) {
const ip = await this.$axios.$get("http://localhost:8080/products");
commit("SET_IP", ip);
}
});
服务器运行良好,但是我无法将数据存储到存储中
答案 0 :(得分:0)
首先,我强烈建议您将动作和突变重命名为getProducts
和SET_PRODUCTS
而不是ip
。另外,请确保您在操作中更改了变量名。尽管这不会更改任何功能,但可以使您的代码更易于阅读。
第二,也许在操作中定义console.log(ip)
之后立即添加一个const
,看看是否在其中获取了想要的数据。在大多数情况下,您将要为变量分配ip.data
。
最后,请确保您在代码中的某个位置调用了该操作。 您应该这样:
this.$store.dispatch('getIP'); // Using your current name
this.$store.dispatch('getProducts'); // Using my recommended name