使用ref定位dom,因为是定位在有v-if、v-for中的DOM节点,所以放在updated中调用了,打印出来之后发现会重复调用七次,有可能是updated更新的原因,目前也找不到控制只执行一次的方法。求助~
代码如下:
// 获取商品编码和商家编码
getGoods : function () {
for(let i=0;i<this.$refs.goods.length;i++) {
app.goodsData = Object.assign({}, app.goodsData, {
sugGoodsCode: this.$refs.goods[i].dataset.procode,
shopCode: this.$refs.goods[i].dataset.vender //能够顺利取到data-procode和data-vender中的数据
})
app.goodsList.push(app.goodsData);
}
}
调用在updated中:
updated: function () {
this.getGoods();
}
后台打印,里面的数据没有问题,就是重复执行的问题存在:
lodash.debounce
mounted
里面调可以么