Error: [vuex] do not mutate vuex store state outside mutation handlers.
时间: 2024-02-09 19:12:50 浏览: 170
vuex中的store
这个错误是因为在 Vuex store 中直接修改了 state,而不是通过 mutation 来修改 state。在 Vuex 中,state 是唯一的数据源,所有对 state 的修改必须通过 mutation 来进行,这样才能确保状态的变更是可追踪的。如果直接修改 state,那么在开发调试和维护时会变得困难,因为我们无法追踪到 state 的变化。
要解决这个错误,你需要在 Vuex store 中定义一个 mutation,然后在 mutation 中修改 state。例如:
```
const store = new Vuex.Store({
state: {
count: 0
},
mutations: {
increment(state) {
state.count++
}
}
})
```
然后,当你想要修改 count 的值时,你需要调用 mutation:
```
store.commit('increment')
```
这样就可以避免直接修改 state 导致的错误。
阅读全文