vue中数组发生改变了,但是页面没有渲染,怎么办?
vue.js不能监听对象属性的添加和删除,因为在vue组件初始化的过程中,会调用getter和setter方法,所以该属性必须是存在在data中,视图层才会响应该数据的变化
<template>
<div>
<button @click="setAge">添加年龄</button>
{{ form.name }}
<input type="text" v-model="form.age">
</div>
</template>
<script>
export default {
data() {
return {
form: {
name: '赵云',
}
}
},
methods: {
setAge() {
//this.$set(对象,对象钟的某一项key值,value值)
this.$set(this.form, 'age', 15)
}
}
}
</script>