react 实现dom打印功能 附代码

Posted 大唐荣华

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了react 实现dom打印功能 附代码相关的知识,希望对你有一定的参考价值。

原理:通过 html2canvas 转换生成base64图片数据,再调用浏览器的打印功能

打印方法:

    /* 打印功能 */
    const printById = () => 
        var ele: htmlElement | null = document.getElementById('你要打印的dom节点') // 注意这里要换成id !!!
        if (!ele) 
            return
        
        html2canvas(ele).then(canvas => 
            canvas.id = "mycanvas";
            // 生成base64图片数据  
            var dataUrl = canvas.toDataURL('image/png');
            var newImg = document.createElement("img");
            newImg.src = dataUrl;
            var jubuData: any = ele?.innerHTML;
            window.document.body.innerHTML = jubuData;
            document.write('<img src="' + newImg.src + '" style="width:100%; height:auto" />')
            setTimeout(() => 
                window.print();
                window.location.reload()
            , 100)
            return false;
        )
    

以上是关于react 实现dom打印功能 附代码的主要内容,如果未能解决你的问题,请参考以下文章

react 实现dom打印功能 附代码

Spring简单实现打印机功能-附完整代码

Spring使用注解的方式来实现简单的打印机功能,附完整代码,菜鸟教程

react 实现一个无限循环的轮播器 附github地址

react 手写优化实现 antd 倒计时功能组件( 附源码)

React入门实战联系人列表Contact(附完整代码)