vue表单修改值后页面输入框中的没有更新(表单的强制刷新)
有的时候我们变化data内的内容,console.log打印的时候是显示已经变化了的,但并没有渲染到界面上去。受 ES5 的限制,Vue.js 不能检测到对象属性的添加或删除。因为 Vue.js 在初始化实例时将属性转为 getter/setter,所以属性必须在 data 对象上才能让 Vue.js 转换它,才能让它是响应的。深入响应式原理1.$set()方法重新渲染this.$set(this
·
有的时候我们变化data内的内容,console.log打印的时候是显示已经变化了的,但并没有渲染到界面上去。受 ES5 的限制,Vue.js 不能检测到对象属性的添加或删除。因为 Vue.js 在初始化实例时将属性转为 getter/setter,所以属性必须在 data 对象上才能让 Vue.js 转换它,才能让它是响应的。
1.$set()方法重新渲染
this.$set(this.student,"age", 24)
2.深拷贝
let name2 = JSON.parse(JSON.stringify(this.name));
或者
this.taskForm = Object.assign({}, this.taskForm)
tip: Object.assign()拷贝当对象中只有一级属性,没有二级属性的时候,此方法为深拷贝,但是对象中有对象的时候,此方法,在二级属性以后就是浅拷贝。
3.$forceUpdate方法
this.$forceUpdate();
方法可以结合@input绑定输入框来执行。
更多推荐
已为社区贡献7条内容
所有评论(0)