在我的Angular应用中,我有一个组件,在模板中,我在单击上有一个print链接,我必须启用打印功能。我正在我的html--
<div>
<a href="#" (click)="print()">PRINT</a>
</div>
和.ts文件 -
print(): void {
let printContents, popupWin;
printContents = document.getElementById('print-section').innerHTML;
popupWin = window.open('', '_blank', 'top=0,left=0,height=100%,width=auto');
popupWin.document.open();
popupWin.document.write(`
<html>
<head>
<title>Print tab</title>
<style>
//........Customized style.......
</style>
</head>
<body onload="window.print();window.close()">${printContents}</body>
</html>`
);
popupWin.document.close();
}
这有效,但它打开了一个新的打印窗口。有没有,我可以在同一窗口中有。我也尝试了 -
<a href="javascript:window.print();">Print</a>
但是上述两种方法都不起作用。任何想法如何在Angular2中打印我的页面。
使用onclick调用print((。
尝试此<a href="#" onclick="print();">Print</a>
这很好。我们将能够打印特定的组件,但是我们需要在document.rite函数中添加标签中的样式。