this.$set的使用
我们在项目开发的过程中,经常会遇到为data中的某一个对象或者某一个对象数组每一项添加一个属性
- 使用this.$set(obj, key, value)/vue.set(obj, key, value)
<script>
export default {
data() {
return {
list: [{
name:'张三',headimg:'1.png',
},{
name:'李四',headimg:'2.png'
}]
}
},
methods: {
setMessage() {
for(let i=0;i<this.list.length;i++){
this.$set(this.list[i],'isShow',false);
}
console.log(this.list)
}
}
}
</script>
- 通过Object.assign(target, sources)方法
<script>
export default {
data() {
return {
list: [{
name:'张三',headimg:'1.png',
},{
name:'李四',headimg:'2.png'
}]
}
},
methods: {
setMessage() {
for(let i=0;i<this.list.length;i++){
this.list[i].isShow = false;
this.list[i] = Object.assign({}, this.list[i]);
}
console.log(this.list)
}
}
}
</script>