不能在Vuex中分配突变

问题描述 投票:1回答:1

一个奇怪的问题,"val "和 "ok "可以是 "console.log()",但state.user却不能进行任何赋值。

export const state = () => ({
  user: 'ok'
})
export const mutations = {
  setUser (state, val) {
    console.log(val, 'ok')
    state.user = val
  }
}

export const actions = {
  setUser: ({ commit }, user) => {
    commit('setUser', user)
  }
}
computed: {
    ...mapState({ user: state => state.user })
  }

怎么办,谢谢

javascript vue.js vuex nuxt.js
1个回答
0
投票

你的state是一个函数,总是返回同一个用户。它应该是对象。

© www.soinside.com 2019 - 2024. All rights reserved.