我有一个布尔状态属性,但显示的是未定义状态?
export default {
state: {
userStateChanged: false,
...
在获取数据时,我已经在此state属性上执行了console.log
并且控制台显示了未定义
async FETCH_ALL_USERS(context, page) {
console.log('state changed?', this.state.userStateChanged);
if (this.state.userStateChanged === false) {
return this.state.users;
} else {
console.log('return new set');
const user = await axios.get("/api/user?page=" + page);
context.commit('SET_ALL_USERS', user.data);
}
},
答案 0 :(得分:2)
您应该通过context
访问存储状态。
async FETCH_ALL_USERS(context, page) {
console.log('state changed?', context.state.userStateChanged);
if (context.state.userStateChanged === false) {
return context.state.users;
} else {
console.log('return new set');
const user = await axios.get("/api/user?page=" + page);
context.commit('SET_ALL_USERS', user.data);
}
},
答案 1 :(得分:0)
在访问状态之前,您首先必须访问商店。
因此,不用console.log('state changed?', this.state.userStateChanged);
做console.log('state changed?', this.$store.state.userStateChanged);