最近项目中需要使用到打印功能 原理就是调起浏览器打印

主要使用的插件是vue-print-nb

官网地址:详细可自行查看官网地址

使用方法

1.下载插件

npm install vue-print-nb

2.在main.js中引入使用

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

3.具体使用

现在data或ref中定义对象,这里用vue3举例

const printObj = ref({id: 'print', // 需要打印元素的idpopTitle: props.name, // 打印配置页上方的标题extraHead: '', // 最上方的头部文字,附加在head标签上的额外标签,使用逗号分割preview: false, // 是否启动预览模式,默认是falsepreviewBeforeOpenCallback() { console.log('正在加载预览窗口!') }, // 预览窗口打开之前的callbackpreviewOpenCallback() { console.log('已经加载完预览窗口,预览打开了!') }, // 预览窗口打开时的callbackbeforeOpenCallback() { console.log('开始打印之前!') }, // 开始打印之前的callbackopenCallback() { console.log('执行打印了!') }, // 调用打印时的callbackcloseCallback() { console.log('关闭了打印工具!') }, // 关闭打印的callback(无法区分确认or取消)clickMounted() { console.log('点击v-print绑定的按钮了!') },// url: 'http://localhost:8080/', // 打印指定的URL,确保同源策略相同// asyncUrl (reslove) {//   setTimeout(() => {//     reslove('http://localhost:8080/')//   }, 2000)// },standard: '',extarCss: '',
})

需要给按钮绑定 自定义指令

<el-button type="primary" @click="exportExcelBtn">导出</el-button>

最后只需要给你需要打印的元素绑定一个id(和定义的打印对象中的一致)值即可

最后看效果

补充:vue-print-nb打印table表格有可能会有打印不全的问题

我的解决方法是调整了table表格的最后宽度

具体解决方法请参考:vue-print-nb打印表格不全

打印功能vue-print-nb相关推荐

  1. Vue -print - nb 打印插件 使用详解 以及连打操作

    Vue -print - nb 打印插件 #安装 npm install vue-print-nb --save #在main.js 全局引用 import Print from 'vue-print ...

  2. 打印功能window.print()

    打印功能window.print() 1. window.print()打印其实打印的是整个当前网页 2. 3. 样式问题 如果使用less,scss 是不会生效的 只能使用css语言格式, 就是不能 ...

  3. 前端打印功能css print

    下面是关于前端打印功能的几种整理,大家有什么好的方法,还望提出...先谢谢啦 第一种:jquery有个打印功能的API(PrintArea) 不过这个特别要注意一个就是打印出新空白,查看源码,在源码中 ...

  4. vue使用print.js实现打印功能,以及添加打印机

    print.js 一个javascript库,可以实现打印功能 github地址 github地址: https://github.com/crabbly/print.js 官网地址 https:// ...

  5. 【vue】实现打印功能

    文章目录 一.vue-print-nb [1]安装 [2]引用 [3]API [4]示例代码 [5]vue-print-nb插件的一些优化 [6]注意事项: 二.print.js :解决了无法打印本地 ...

  6. vue实现打印功能的两种方法/web打印控件

    第一种方法:通过npm 安装插件 1,安装  npm install vue-print-nb --save 2,引入  安装好以后在main.js文件中引入 1 2 import Print fro ...

  7. vue实现二维码批量打印功能

    vue实现二维码批量打印功能 业务需求:客户需要给每个商品贴上二维码,为了更加高效的完成这项工作需要配合热敏打印机实现批量打印二维码的需求,因为是web项目后端会部署到服务器上,因此只能通过js的方式 ...

  8. 浏览器打印功能print.js

    插件文档:https://printjs.com/ npm文档: https://www.npmjs.com/package/print-js npm install print-js --save ...

  9. Vue页面实现打印功能

    实现打印功能,需要安装一个插件vue-print-nb,使用方法如下 1)安装全局的插件 npm install vue-print-nb -S 2)在main.js中注册 import Print ...

  10. Vue前端实现excel的导入、导出、打印功能

    目录 一.相关依赖下载 二.excel导入功能 三.table导出excel表格 1.导出行数据 2.导出table数据(也会导出合并单元格) 3.导出二维数据的table数据 4.导出合并单元格ta ...

最新文章

  1. 学会放下包袱,热爱单例
  2. 魔改CNN揭秘宇宙大爆炸:物理学的核心是对称性
  3. apache-2.4.12之虚拟主机配置问题与觖决办法
  4. 全球及中国液化天然气(LNG)行业建设规模现状及十四五产业规划报告2021年版
  5. php微信墙开发,Node.js如何开发微信墙
  6. 完美世界手游不显示新服务器,完美世界手游手Q互通-黑曜开服时间表_完美世界手游新区开服预告_第一手游网手游开服表...
  7. console application_灵活使用 console 让 js 调试更简单
  8. Python HTTP库:requests快速入门
  9. 6-6-树的孩子链表(带双亲)存储表示法-树和二叉树-第6章-《数据结构》课本源码-严蔚敏吴伟民版...
  10. 优点三维逆向建模——消除实景三维应用后顾之忧
  11. matlab程序设计题题库及答案,matlab程序设计例题及答案
  12. YoutuBe 是如何利用深度学习解决搜索推荐问题的? (一) - 论文翻译
  13. springboot中static下的图片404
  14. 抖音自动生成文字_抖音视频怎么加文字
  15. 使用360文档卫士监控文件修改操作
  16. matlab找多项式最值,如何利用matlab计算最小多项式
  17. Android自定义控件之圆形头像
  18. Java知识之Git
  19. 微信小程序textarea换行输入的文本,在view中如何换行渲染
  20. 张岩 重庆大学 计算机学院,【学院之星】第二期

热门文章

  1. HP0-A22 题库免费下载
  2. 我如何构建anycast网络
  3. 《卡拉马佐夫兄弟》读后感
  4. java web servlet、servlet容器 HTTP服务器和mvc三层架构或者说servlet属于哪一层的,给我搞的晕晕的,今天终于弄明白了
  5. ubuntu 8.10下,集成主板上nvidia geforce8200驱动程序的安装
  6. H电-Problem Archive-4520-小Q系列故事——最佳裁判
  7. swagger配置及升级版swagger-bootstrap-ui配置+访问账号密码登录限制
  8. Android系统升级全流程
  9. rfa 文件读取_rfa文件扩展名,rfa文件怎么打开?
  10. 助力智慧农业|飞凌FCU1101智能灌溉控制器解决方案