在v-for中为遍历的每一项添加ref属性,并获取相应的值

在做vue打印pdf时,打印不定数量的类似文件时需要为每一个文件添加一个只属于自己ref属性,那么怎么操作呢

<div v-for="(item, i) in packageCount" :key="i" :ref="'Bill' + item">
          <expressBill :packageCount="item" :deliveryId="deliveryId" :bill="bill"></expressBill>
</div>  其中expressBill 是需要打印的文件样式组件,packageCount、deliveryId、bill等是传递到子组件的数据

 

 那么如何获取这些ref属性值呢

 for (var i = 1; i <= this.packageCount; i++) {
        this.$print(this.$refs[`Bill${i}`][0])//此为打印pdf的操作,可以打印循环中的每一个数据
 }

一定要记得取的索引为0,不然打印预览就会获取不到DOM元素

 

posted @ 2021-01-13 16:32  冰晨之露  阅读(926)  评论(0编辑  收藏  举报