【问题标题】:Vuex + vue not reactive when using dictionary as state object使用字典作为状态对象时,Vuex + vue 没有反应
【发布时间】:2021-08-21 00:20:25
【问题描述】:

我需要使用字典作为我的存储变量之一,但它不像数组那样具有反应性,解决这个问题的最佳实践是什么? 我创建了最小的示例:

https://codesandbox.io/s/vuex-store-forked-ko3md?file=/src/App.vue

【问题讨论】:

    标签: javascript vue.js vuex vue-reactivity


    【解决方案1】:

    为了添加新的响应式道具,而不是使用直接赋值,你应该使用Vue.set() 方法:

      ADD_ITEM(state, { key, value }) {
        Vue.set(state.dict, key, value)
      }
    

    要更深入地了解 Vue 反应性,您应该阅读官方文档:https://vuejs.org/v2/guide/reactivity.html

    【讨论】:

    • 非常感谢!另外,我想知道我可以使用这种方法从字典中删除键吗?
    • 当然可以使用Vue.delete(object, key)
    猜你喜欢
    • 2018-11-29
    • 2021-02-21
    • 2022-06-21
    • 2020-01-10
    • 2020-08-13
    • 1970-01-01
    • 2021-02-10
    • 1970-01-01
    • 2021-02-15
    相关资源
    最近更新 更多