码迷,mamicode.com
首页 > 编程语言 > 详细

vue的watcher 关于数组和对象

时间:2018-12-27 13:14:27      阅读:418      评论:0      收藏:0      [点我收藏+]

标签:put   str   解决方法   监听   解决   over   技术分享   ima   sign   

数组

不能被监听到的情况

1、直接下标赋值(但对象直接修改原有属性值可以渲染视图,虽然也监听不到)

2、修改数组length

解决方法:

this.$set(this.arr,index,val)

push或splice等修改原数组的方法

直接赋值数组

对象

不能被监听的情况

1、直接修改、添加、删除属性(修改虽然监听不到,但可以重新渲染视图,删除、添加不会重新渲染视图;设置deep:true则可以监听)

2、this.$set()修改原有属性

解决方法:

1、obj:{

  handler(){},

  deep:true

}

2、this.$set()添加、this.$delete()删除属性

3、直接重新赋值对象

   this.obj=Object.assign({},this.obj,{lover:‘song‘})

4、活用computed

技术分享图片

 

vue的watcher 关于数组和对象

标签:put   str   解决方法   监听   解决   over   技术分享   ima   sign   

原文地址:https://www.cnblogs.com/szzlily/p/10184174.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!