有特效的网站,让别人做网站多久开始注册域名,杭州设计公司老板被点火,建设小学瓯江校区网站在实际开发工程中通过获取后端数据监听判断数组中长度是否大于0从而调用其他的方法#xff0c;但是如果data域中的数据出现变化的话#xff0c;就会导致监听中的方法重复调用#xff0c;导致一些不必要的bug#xff0c;例如#xff1a;
原理#xff1a;
watch监听的数据…在实际开发工程中通过获取后端数据监听判断数组中长度是否大于0从而调用其他的方法但是如果data域中的数据出现变化的话就会导致监听中的方法重复调用导致一些不必要的bug例如
原理
watch监听的数据在Vue实例初始化的过程中发生了变化。Vue在初始化时会遍历data选项中的数据将其转化为响应式数据。如果在转化过程中某些数据发生了变化watch会在转化前后都触发一次。
问题 我们发现每个数组只有一个图片地址且显示在视图层中。
现在我们通过$set改变data域中list数组中每个对象的属性在试试 运行结果 我们发现data区域中list数组中属性发生改变后watch监听就会重复调用导致数组1和数组2重复插入新的数据图片地址从而导致数据重复。
解决方法
在data区域中定义一个判断数据yestrue在watch监听内if判断中加入yestrue的判断条件watch方法内吧yes赋值为false。 运行结果