当我使用带有promise的操作时,我确实遇到了一些问题,让indexOf在vuex变异中工作。这是我的行动
export const deleteItem = ({commit}, item) => {
return new Promise((resolve, reject) => {
Vue.http.delete(item.url, item)
.then(response => {
commit(types.DELETE_ITEM, {response, item})
resolve(response)
})
.catch(error => {
commit(types.ERROR, error)
reject(error)
})
})
}
这是我的突变
[types.DELETE_ITEM](state, {response, item}) {
state.notifications = {
display: true,
type: 'success',
ok: response.ok,
status: response.status,
statusText: response.statusText,
body: response.body
}
state.items.splice(state.items.indexOf(item), 1)
}
我收到错误indexOf不是函数,有人知道为什么会这样吗?
答案 0 :(得分:0)
我愚蠢到将state.items数组重新分配给代码中的对象并且indexOf函数消失了。