vue打印文件使用 v-print 并且实现一个页面多个打印

步骤一:下载安装插件

npm install vue-print-nb --save

步骤二:main.js中引入组件

import Print from 'vue-print-nb'
	Vue.user(Print)

步骤三:HTML部分

 <li  v-for="(item,index) of  qrCodeList" :key="index" style="margin: 0 auto"   >
           <div :id="item.desc">
             <div>
               <span v-if="teamQrcode==='room'" style="text-align: left;display: inline-block;width: 70px;">房间号:</span>
               <span v-else-if="teamQrcode==='guest'" style="text-align: left;display: inline-block;width: 70px;">宾客姓名:</span>
               <span style="text-align: center">{{item.info}}</span>
             </div>
             <div v-if="teamQrcode==='room'" style="margin-top: 10px">
               <span style="text-align: left">是否已住:</span>
               <span v-if="item.is_check_in===0" style="color: #F56C6C;text-align: center" >否</span>
               <span v-else style="color: #67C23A;text-align: center" >是</span>
             </div>
             <div :id="item.id" :ref="item.id" style="display: inline-block;margin: 10px auto;"></div>
           </div>

           <div>
             <el-button type="primary" plain   v-print="'#'+item.desc"  size="small"  >打印</el-button>
           </div>

         </li>

上述代码是为了实现一个页面展示多个二维码,并且每一个二维码都有一个打印,效果如下
在这里插入图片描述

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
vue3-print-nb 是一个基于 Vue3 的多页表格打印插件。它支持多表格同时打印,表格大小和位置的自定义,还可以设置表格的样式、标题、页眉页脚等。使用 vue3-print-nb 插件可以方便地实现页面多 table 打印。 具体使用方法如下: 1. 安装 vue3-print-nb 插件:在项目目录下执行 npm install vue3-print-nb 命令进行安装; 2. 引入 vue3-print-nb 插件:在需要使用的组件中,使用 import 引入 vue3-print-nb 插件; 3. 在组件中使用插件:在组件的 template 中添加需要打印的 table 内容,并在 script 中调用插件的打印方法。 下面是一个示例代码: ``` <template> <div> <table class="table"> <thead> <tr> <th>姓名</th> <th>年龄</th> <th>性别</th> </tr> </thead> <tbody> <tr> <td>小明</td> <td>20</td> <td>男</td> </tr> <tr> <td>小红</td> <td>22</td> <td>女</td> </tr> </tbody> </table> <table class="table"> <thead> <tr> <th>姓名</th> <th>学科</th> <th>成绩</th> </tr> </thead> <tbody> <tr> <td>小明</td> <td>数学</td> <td>90</td> </tr> <tr> <td>小明</td> <td>英语</td> <td>80</td> </tr> <tr> <td>小红</td> <td>数学</td> <td>85</td> </tr> <tr> <td>小红</td> <td>英语</td> <td>90</td> </tr> </tbody> </table> <button @click="printTable">打印表格</button> </div> </template> <script> import { defineComponent } from 'vue' import Print from 'vue3-print-nb' export default defineComponent({ components: { Print }, methods: { printTable() { // 打印所有表格 this.$refs.print.print() } } }) </script> ``` 以上示例代码中,通过引入 vue3-print-nb 插件,定义了一个组件,包含两个 table 表格和一个打印按钮。当点击按钮时,通过调用 printTable 方法,执行 $refs.print.print() 方法打印所有表格。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值