我在 vuex store 中的状态很大。
有没有办法一次性重置所有状态的数据,而不是手动将所有数据设置为空?
最佳答案
我刚刚找到了适合我的绝佳解决方案。
const getDefaultState = () => {
return {
items: [],
status: 'empty'
}
}
// initial state
const state = getDefaultState()
const actions = {
resetCartState ({ commit }) {
commit('resetState')
},
addItem ({ state, commit }, item) { /* ... */ }
}
const mutations = {
resetState (state) {
// Merge rather than replace so we don't lose observers
// https://github.com/vuejs/vuex/issues/1118
Object.assign(state, getDefaultState())
}
}
export default {
state,
getters: {},
actions,
mutations
}
感谢 Taha Shashtari 提供的出色解决方案。
迈克尔,
关于vue.js - 如何清除 vuex store 中的状态?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42295340/