为了账号安全,请及时绑定邮箱和手机立即绑定

vue watch

vue watch

<div id="itany">       <div>{{items}}</div>    </div>           <script>      var vmvm = new Vue({        el:"#itany",        data:{          count:0,          items:[1,2,3,4,5]        },        watch:{          "items":{            handler(newValue,oldValue){              console.log(newValue)            },            deep:true          }        }      });      console.log(vmvm.items[0]);      vmvm.items[0] = 200;    </script>请问下,为什么console.log()为什么没有执行呢,而如果数组里面是对象的话就可以打印出来,
查看完整描述

2 回答

?
UYOU

TA贡献1878条经验 获得超4个赞

查看完整回答
反对 回复 2019-04-02
?
www说

TA贡献1775条经验 获得超8个赞

vue数组的检测是个特殊的存在,当使用arr[index]=a或者arr.length=0的的时候,watch无法检测到,vue提供了一些解决方法,比如vue.$set;


查看完整回答
反对 回复 2019-04-02
  • 2 回答
  • 0 关注
  • 807 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信