Vue中判断对象属性是否存在(使用this.$set)


在vue中,若直接给一个空对象添加一个属性并且是响应式的,必须使用$set方法,只有这样才能让视图同步刷新。

当对象的属性存在时就赋值,不存在则给其添加属性,再赋值。

//判断属性是否存在
if (!this.user.age) {
    //参数:对象,要添加的属性名,属性值
    this.$set(this.user, "age", 20)
} else {
     this.user.age = 20
}

除了可以给对象添加属性外,还可以对数组添加元素

//给数组arr第二个元素赋值20
this.$set(this.arr, 1, 20)

除了使用this.$set()方法外,还可以使用this.$forceUpdate();进行强制更新,有时需要两个一起使用才能强制刷新视图。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM