React中使用window.print打印页面无响应怎么办

Admin 2022-07-07 群英技术资讯 598 次浏览

在这篇文章中,我们来学习一下“React中使用window.print打印页面无响应怎么办”的相关知识,下文有详细的讲解,易于大家学习和理解,有需要的朋友可以借鉴参考,下面就请大家跟着小编的思路一起来学习一下吧。

一、问题背景:

window.print()页面打印出现页面无响应

看了网上很多办法都是让用window.location.reload(),对于这个解决方案不置可否,刷新页面当然可以解决这个问题,但是不高级

二、问题原因:

可能操作了document但是并未进行销毁(可能是)

 三、问题解决:

消除操作的document

封装一个printFun()方法

//该方法参数 content:需要打印的元素
printFun = (content) =>{
        var Window = window.open("", "页面打印", "toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=no, resizable=yes, copyhistory=no");
        var style = "<style type='text/css'></style>";
        Window.document.write(content + style);
        Window.focus();
        Window.document.close();     //关闭document的输出流, 显示选定的数据
        Window.print();               //打印当前窗口
        return Window;
    }

方法调用:billDetails是你当前想要打印的元素的 id,当然只要是能找到该元素,其他方法都可以

var windows = this.print(document.getElementById('billDetails').innerHTML);
    windows.close();

总结:

出现样式问题的需要自己将css加入进代码,就是printFun方法中的style变量,需要自己进行需求更改


感谢各位的阅读,以上就是“React中使用window.print打印页面无响应怎么办”的内容了,经过本文的学习后,相信大家对React中使用window.print打印页面无响应怎么办都有更深刻的体会了吧。这里是群英网络,小编将为大家推送更多相关知识点的文章,欢迎关注! 群英智防CDN,智能加速解决方案

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。

猜你喜欢

成为群英会员,开启智能安全云计算之旅

立即注册
专业资深工程师驻守
7X24小时快速响应
一站式无忧技术支持
免费备案服务
免费拨打  400-678-4567
免费拨打  400-678-4567 免费拨打 400-678-4567 或 0668-2555555
在线客服
微信公众号
返回顶部
返回顶部 返回顶部
在线客服
在线客服