无法使用“in”运算符在未定义中搜索“X”
2021-01-11
5153
未捕获的类型错误:无法使用“in”运算符在未定义中搜索“USERS”
我无法理解这一行:
使用“in”运算符搜索“USERS”
以及为什么
未定义
?
我不明白这些错误,请向我解释。
我的 Vuex :
export default new Vuex.Store({
state: {
users: []
},
actions: {
GET_USERS_FROM_API({commit}) {
return axios('http://localhost:3000/users', {
method: GET
})
.then((response) => {
commit('SET_USERS_TO_VUEX', response.data)
})
}
},
mutations: {
SET_USERS_TO_VUEX: (state, users) => {
state.users = users
}
},
getters: {
USERS(state) {
return state.users
}
},
modules: {
}
这是我的脚本:
import {mapActions, mapGetters} from 'vuex'
export default {
name: 'Home',
components: {
},
data() {
},
computed: {
...mapGetters([
'USERS'
])
},
methods: {
...mapActions([
'GET_USERS_FROM_API'
])
},
mounted() {
this.GET_USERS_FROM_API()
}
}
</script>
也许我在
vuex
中的
axios
响应中犯了错误?我在状态中
定义了
用户。我认为我的
axios
响应中出现错误,但我不知道如何修复它。
2个回答
语法错误,忘记给 GET 方法加上引号,也忘记导入 axios
Justin Moreyl
2021-01-11
似乎你忘记了在数据语句中返回对象,导致 Vue 崩溃。
有效的数据属性是:
data() {
return{};
},
Sergei Illarionov
2022-10-07