【发布时间】:2023-03-21 14:04:01
【问题描述】:
试图了解 VueX,但努力让 Axios 使用它。我的 store.js 文件中有以下内容:
state: {
cards: [],
currentPage: 1,
lastPage: 2,
},
actions: {
loadGradients(pageNumber) {
if (axios == null) {
return;
}
axios
.get("/api/gradients?page=" + pageNumber + "&sort=" + "created_at")
.then((res) => {
if (res.status === 200) {
state.cards = res.data.gradients.data;
state.lastPage = res.data.gradients.last_page;
state.currentPage = res.data.gradients.current_page;
}
})
.catch((err) => {
console.log(err);
});
},
},
我通过我的主 app.js 文件中的以下函数调用它:
created() {
this.loadGradients(1);
},
methods: {
loadGradients: function (pageNumber) {
this.$store.dispatch("loadGradients");
},
},
但是当我运行页面时,store.js 文件中的数组似乎没有被更新,即使数据是从数据库中正确返回的。不知道我做错了什么?如果我必须使用动作和突变的组合,请问我该怎么做?
【问题讨论】:
标签: javascript vue.js vuejs2 axios vuex