在vue项目中 使用window.print() 遇到的问题,求解答。

window.print() 遇到的问题
刚开始直接调用window.print(),页面展示不全。


doPrint() {
            window.print();
        },

在网上找了这个方法,打印预览是能展示全了。但是按这个方法写的页面,本页面所有的按钮都不能用了。怎么解决啊,


doPrint() {
            let subOutputRankPrint = document.getElementById('print');
            let newContent = subOutputRankPrint.innerHTML;
            let oldContent = document.body.innerHTML;
            document.body.innerHTML = newContent;
            window.print();
            document.body.innerHTML = oldContent;
            return false;
        },

windows.print()实现的打印功能从打印预览返回时页面按钮、单选框、复选框都失效了。

document.body.innerHTML = newContent;
你改变了 页面内容了吧

document.body.innerHTML = newContent; innerHTML 是识别标签的
document.body.innerHTML 等于你把页面body的内容 改变了 替换了
替换成 newContent 了

建议你把实现的图看看 不然不好确定问题呀