vue新手小白,在看vue文档的时候 发现vue关于 数组,对象值改变的与 ng有那么点不同。
官方表示
由于 JavaScript 的限制,Vue 不能检测以下变动的数组:
- 当你利用索引直接设置一个项时,例如:
vm.items[indexOfItem] = newValue
- 当你修改数组的长度时,例如:
vm.items.length = newLength
但是对于曾经使用ng的我来说,是不一样的。
比如:
vue 不能检测你直接根据数组的索引对数组的某个值修改。
Vue 不能检测对象属性的添加或删除。
但是它提供了另外的方法vue.set ,可以修改数组的值喝对象新增删除属性。
<script>
export default {
data(){
return {
list:[1,2,3,4,5,6],
userProfile: {
name: 'Anika'
}
user: {
name: "hea",
age: 12
}
}
},
mounted() {
this.$set(this.list, 1, 27)
this.$set(this.userProfile, 'age', 27)
this.user = Object.assign({}, this.user, {
age: 22,
name: "huangenai"
});
}
}
</script>
此随笔乃本人学习工作记录,如有疑问欢迎在下面评论,转载请标明出处。
如果对您有帮助请动动鼠标右下方给我来个赞,您的支持是我最大的动力。