pc端打印功能

1.<el-button size="mini" type="primary" @click="doPrint" class="ml20">打 印</el-button>

2.将需要打印的范围包裹住(定义id)

 <table border="1"  class="mt20 table"   id="printtable" >
          <tr >
            <td >产品</td>
            <td v-for="(item, index) in cp">     
            <dict-tag
            :options="dict.type.sys_prod_type"
            :value="item"
          /></td>
          </tr>
          <tr>
            <td>生产线</td>
            <td v-for="(item, index) in scx">{{ item }}</td>
          </tr>
          <tr>
            <td>规格</td>
            <td v-for="(item, index) in gg">{{ item }}</td>
          </tr>
          <tr>
            <td>运行参数</td>
            <td v-for="(item, index) in yxcs">{{ item }}</td>
          </tr>
          <tr v-for="(item, index) in date">
            <td>{{ item.date }}</td>
            <td v-for="(res, index1) in item.values">{{ res }}</td>
          </tr>
          <tr>
            <td>总合计</td>
            <td v-for="(item, index) in totalValue">{{ item }}</td>
          </tr>
        </table>

3.引入html2canvas和print-js插件

  1. html2canvas插件

    1)npm install html2canvas --save
    2)页面引入 import html2canvas from “html2canvas”;

或者
1)定义html2canvas.min.js文件
2)页面引入import html2canvas from “@/utils/html2canvas.min.js”;
3)html2canvas.min.js文件

  1. print-js插件
    1) npm install print-js --save
    2)页面引入 import print from ‘print-js’

4.打印功能实现(页面所见内容才能进行打印出来,如果隐藏或者没有来得及显示打印不出来)

 doPrint() {
      this.$nextTick(() => {
        let element = window.document.getElementById("printtable");
        html2canvas(element, {
          backgroundColor: null,
          useCORS: true,
          windowHeight: document.body.scrollHeight1,
        }).then((canvas) => {
          const url = canvas.toDataURL();
          // this.printImg = url;
          printJS({
            printable: url,
            type: "image",
            documentTitle: "月生产计划(单品)计划明细",
            scanStyles: false,
            repeatTableHeader: false,
            header: null,
          });
        });
      });
    },

5.结果
在这里插入图片描述打印效果图

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

看不见看不见看不见

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值