gpt4 book ai didi

javascript - 添加新对象替换旧对象的内容 - VueJS Store

转载 作者:行者123 更新时间:2023-12-01 03:56:35 25 4
gpt4 key购买 nike

我使用以下代码将新对象插入数组“items”中。但问题是,当我插入一个新对象时,它会替换之前添加的对象的内容。这样,即使添加的对象不同,也始终包含相同的对象。

我听说这是由于使用了“push”,它也传递了引用。我该如何解决这个问题,VueJS

Store.js

var store = new Vuex.Store({
state: {
value: 1,
quote: {
items: [],
something: ''
}
},
mutations: {
ADD (state, item) {
state.quote.items.push(item)
}
}
})

最佳答案

而是使用 spread operator ,

mutations: {
ADD (state, item) {
state.quote.items = [...state.quote.items, Object.assign({}, item)]
}
}

是否不需要展开运算符,您可以这样做:

mutations: {
ADD (state, item) {
state.quote.items.push(Object.assign({}, item))
}
}

关于javascript - 添加新对象替换旧对象的内容 - VueJS Store,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42611369/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com