位置: IT常识 - 正文

用vue实现打印页面的几种方法(vue如何实现打印)

编辑:rootadmin
用vue实现打印页面的几种方法 1.第一种就是直接调用 window.print()方法

推荐整理分享用vue实现打印页面的几种方法(vue如何实现打印),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:vue前端打印,vue页面打印,vue打印word,vue如何实现打印功能,vue实现打印页面表格,vue如何实现打印功能,vue实现打印页面表格,vue实现打印页面表格,内容如对您有帮助,希望把文章链接给更多的朋友!

这种方法的坏处就是 默认打印整个页面,不能打印局部页面。

2.第二种使用v-print

首先先下载 npm install vue-print-nb --save 然后在main.js中引入 main.js中引入

import Print from 'vue-print-nb'Vue.user(Print)用vue实现打印页面的几种方法(vue如何实现打印)

由于我用的是jeecg所以和你们不太一样 然后就是在代码里面用了

<div class='preview_content2' id="print" ref="print"> //以是要打印的内容 <div style='text-align: center;margin-top: 100px;'> <a-button type='primary' size="large" v-print=""#print"" style="width: 150px"> 打印 </a-button> </div>//打印结束 </div>

点击上面那个打印按钮 就会自动打印你想要的部分了

3.第三种使用print.js 使用这种的好处就是可以在打印前进行一些自己想要的操作 比如校验 第一步先下载print.js 我这边直接把js放出来

// 打印类属性、方法定义/* eslint-disable */const Print = function (dom, options) { if (!(this instanceof Print)) return new Print(dom, options); this.options = this.extend({ 'noPrint': '.no-print' }, options); if ((typeof dom) === "string") { this.dom = document.querySelector(dom); } else { this.isDOM(dom) this.dom = this.isDOM(dom) ? dom : dom.$el; } this.init();};Print.prototype = { init: function () { var content = this.getStyle() + this.getHtml(); this.writeIframe(content); }, extend: function (obj, obj2) { for (var k in obj2) { obj[k] = obj2[k]; } return obj; }, getStyle: function () { var str = "", styles = document.querySelectorAll('style,link'); for (var i = 0; i < styles.length; i++) { str += styles[i].outerHTML; } str += "<style>" + (this.options.noPrint ? this.options.noPrint : '.no-print') + "{display:none;}</style>"; return str; }, getHtml: function () { var inputs = document.querySelectorAll('input'); var textareas = document.querySelectorAll('textarea'); var selects = document.querySelectorAll('select'); for (var k = 0; k < inputs.length; k++) { if (inputs[k].type == "checkbox" || inputs[k].type == "radio") { if (inputs[k].checked == true) { inputs[k].setAttribute('checked', "checked") } else { inputs[k].removeAttribute('checked') } } else if (inputs[k].type == "text") { inputs[k].setAttribute('value', inputs[k].value) } else { inputs[k].setAttribute('value', inputs[k].value) } } for (var k2 = 0; k2 < textareas.length; k2++) { if (textareas[k2].type == 'textarea') { textareas[k2].innerHTML = textareas[k2].value } } for (var k3 = 0; k3 < selects.length; k3++) { if (selects[k3].type == 'select-one') { var child = selects[k3].children; for (var i in child) { if (child[i].tagName == 'OPTION') { if (child[i].selected == true) { child[i].setAttribute('selected', "selected") } else { child[i].removeAttribute('selected') } } } } } return this.dom.outerHTML; }, writeIframe: function (content) { var w, doc, iframe = document.createElement('iframe'), f = document.body.appendChild(iframe); iframe.id = "myIframe"; //iframe.style = "position:absolute;width:0;height:0;top:-10px;left:-10px;"; iframe.setAttribute('style', 'position:absolute;width:0;height:0;top:-10px;left:-10px;'); w = f.contentWindow || f.contentDocument; doc = f.contentDocument || f.contentWindow.document; doc.open(); doc.write(content); doc.close(); var _this = this iframe.onload = function(){ _this.toPrint(w); setTimeout(function () { document.body.removeChild(iframe) }, 100) } }, toPrint: function (frameWindow) { try { setTimeout(function () { frameWindow.focus(); try { if (!frameWindow.document.execCommand('print', false, null)) { frameWindow.print(); } } catch (e) { frameWindow.print(); } frameWindow.close(); }, 10); } catch (err) { console.log('err', err); } }, isDOM: (typeof HTMLElement === 'object') ? function (obj) { return obj instanceof HTMLElement; } : function (obj) { return obj && typeof obj === 'object' && obj.nodeType === 1 && typeof obj.nodeName === 'string'; }};const MyPlugin = {}MyPlugin.install = function (Vue, options) { // 4. 添加实例方法 Vue.prototype.$print = Print}export default MyPlugin

然后把js放在自己的目录中 我的目录是这样子的

第二步在main.js中引入

import Print from '@/utils/printTest'// Vue.use(Print)

最后就是在页面中使用了

本文链接地址:https://www.jiuchutong.com/zhishi/294497.html 转载请保留说明!

上一篇:学校官网首页 2页网页设计(HTML+CSS+JavaScript)(学校官网首页图片)

下一篇:vue项目created()被调用多次的坑(vue created mounted)

  • e人e本为什么价格高(e人e本怎么样)(e人e本为什么比ipad还贵)

    e人e本为什么价格高(e人e本怎么样)(e人e本为什么比ipad还贵)

  • 黑鲨4spro处理器是什么(黑鲨4spro处理器位置)

    黑鲨4spro处理器是什么(黑鲨4spro处理器位置)

  • 小米手机照片组合怎么弄(小米相册怎么做组图)

    小米手机照片组合怎么弄(小米相册怎么做组图)

  • 笔记本屏幕怎么擦(笔记本屏幕怎么清洁)

    笔记本屏幕怎么擦(笔记本屏幕怎么清洁)

  • 拼多多红包助力次数上限怎么办(拼多多红包助力网站)

    拼多多红包助力次数上限怎么办(拼多多红包助力网站)

  • 华为荣耀x10发布会时间(华为荣耀x10发布时间)

    华为荣耀x10发布会时间(华为荣耀x10发布时间)

  • 钉钉直播老师能听到学生说话吗(钉钉直播老师能听到学生声音吗)

    钉钉直播老师能听到学生说话吗(钉钉直播老师能听到学生声音吗)

  • 苹果笔一代充电要多久(苹果笔一代充电器)

    苹果笔一代充电要多久(苹果笔一代充电器)

  • 华为短信怎么转移到另外一个手机(华为短信怎么转移到小米)

    华为短信怎么转移到另外一个手机(华为短信怎么转移到小米)

  • 苹果怎样轻点屏幕就亮(苹果怎么轻点屏幕亮屏)

    苹果怎样轻点屏幕就亮(苹果怎么轻点屏幕亮屏)

  • 魅族m872q什么型号(魅族m872h是什么型号)

    魅族m872q什么型号(魅族m872h是什么型号)

  • 苹果耳机有几代(苹果耳机有几代 年份)

    苹果耳机有几代(苹果耳机有几代 年份)

  • 计算机的性能主要由什么决定(计算机的性能主要取决于硬盘的性能)

    计算机的性能主要由什么决定(计算机的性能主要取决于硬盘的性能)

  • word新建文档怎么命名(word新建文档怎么操作)

    word新建文档怎么命名(word新建文档怎么操作)

  • 淘宝怎么取消开售提醒功能(淘宝怎么取消开店认证)

    淘宝怎么取消开售提醒功能(淘宝怎么取消开店认证)

  • 忘记wifi管理员密码怎么办(忘记wifi管理员登陆密码)

    忘记wifi管理员密码怎么办(忘记wifi管理员登陆密码)

  • qq音乐乐币怎么退(qq音乐乐币怎么清空)

    qq音乐乐币怎么退(qq音乐乐币怎么清空)

  • 打印机安装好了无法打印(打印机安装好了扫描仪需要安装吗)

    打印机安装好了无法打印(打印机安装好了扫描仪需要安装吗)

  • 微信拍一个视频动态怎么删除(微信拍一个视频动态怎么没了)

    微信拍一个视频动态怎么删除(微信拍一个视频动态怎么没了)

  • 怎么把时间和天气设置到桌面(怎么把时间和天气设置到主屏幕上)

    怎么把时间和天气设置到桌面(怎么把时间和天气设置到主屏幕上)

  • 为什么无线鼠标连不上电脑(为什么无线鼠标插在电脑没反应)

    为什么无线鼠标连不上电脑(为什么无线鼠标插在电脑没反应)

  • word水平居中(word水平居中对齐)

    word水平居中(word水平居中对齐)

  • cad横向打印(cad2014打印横向)

    cad横向打印(cad2014打印横向)

  • 莫阿尔博阿尔附近的带纹矛吻海龙,菲律宾 (© Jenna Szerlag/Alamy)(阿尔莫什)

    莫阿尔博阿尔附近的带纹矛吻海龙,菲律宾 (© Jenna Szerlag/Alamy)(阿尔莫什)

  • 一般纳税人金税盘抵税会计分录
  • 预提费用在资产负债表哪个科目
  • 成本核算的三种基本方法
  • 乘车保险费
  • 公司付其他公司的工资
  • 补缴企业所得税的计算公式
  • 收到工伤赔偿款会计分录
  • 运输费用和保险费用会计分录
  • 预收货款存入银行分录
  • 公司代扣社保为什么是400多余的钱
  • 增值税销项税如何进行处理,有哪些种情况
  • 没收土地竞买保证金政策法律
  • 应收账款资产减值损失转回和核销的区别
  • 现金存款账户
  • 出口退税预审在申报系统怎么做
  • 企业所得税补充申报怎么报
  • 分支机构享受了税收优惠,是由总机构备案还是分支机构备案?
  • 新个税法规定的专项扣除包括住房公积金
  • 债务利息税前列支什么意思
  • 投资款需要缴纳增值税吗
  • 简述国内采购流程
  • 分期收款确认成功怎么办
  • 钱打到对公账户
  • 一般公司的hr会查案底吗
  • 优先股分类为金融负债
  • 企业所得税汇算清缴会计分录
  • window10设置wifi热点
  • 使用php进行mysql数据库编程的基本步骤
  • win11怎么用户改名
  • php require的用法
  • 物业公司成本费用
  • springboot常用
  • php throw
  • 社保调整基数后 两个月没变化
  • 企业会计准则应付利息计入什么科目?
  • 向客户收费
  • 日落时有什么变化
  • 定额发票累计领用金额怎么填
  • 一文通透从输入URL到页面渲染的全过程----高频面试
  • phpcms怎么修改模板风格
  • python线程和协程
  • 坏账准备抵消期初未分配利润
  • 无发票的费用该谁承担
  • 企业年金举例说明
  • 国债利息收入的分录
  • 物品数量怎么填写
  • 分公司企业所得税怎么缴纳
  • 畜类生产性生物资产计算折旧的最低年限
  • 快递公司成本分析
  • 利息收入的会计科目
  • 工程款的税费怎么计算
  • 建筑业建议
  • 去税局购买税盘要注意什么
  • 股东股权转让印花税 公司承担
  • 财经网课 app
  • 企业建帐的基本要求
  • Mysql优化sql方案
  • mysql macbook安装教程
  • sqlserver获取数据库名
  • appcrash是什么文件
  • services.exe修改注册表
  • win8更新一直停着不动
  • windows8怎么新建word文档
  • xp系统停止服务了还能用吗
  • qq远程桌面操作
  • linux如何创建ftp
  • window10自动开机怎么回事
  • python怎么打印完整的信息
  • python转换语句
  • 批处理脚本怎么写
  • python获取本地路径
  • c# 抽象类的作用
  • Jquery针对tr td的一些实用操作方法(必看篇)
  • jquery数据类型
  • js类的静态属性
  • 山西省地方税务局 先进 文明 李家庄税务所
  • 外经证的有效期是多久
  • 国家税务总局好进吗
  • 多缴税款可以抵顶以后欠费的税款吗
  • 财税[2020]25号
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设