当前位置: 首页 > 面试题库 >

单击按钮如何打印React组件?

卓学智
2023-03-14
问题内容

单击按钮如何只打印一个组件。

我知道这个解决方案:

window.frames["print_frame"].window.focus();
window.frames["print_frame"].window.print();
$('.print_frame').remove();

但是React不想使用框架。

有什么办法吗?谢谢。


问题答案:

客户端上有两种解决方案。一种是像您张贴的框架。不过,您可以使用iframe:

var content = document.getElementById("divcontents");
var pri = document.getElementById("ifmcontentstoprint").contentWindow;
pri.document.open();
pri.document.write(content.innerHTML);
pri.document.close();
pri.focus();
pri.print();

这期望这个html存在

<iframe id="ifmcontentstoprint" style="height: 0px; width: 0px; position: absolute"></iframe>

另一种解决方案是使用媒体选择器,并在media="print"样式上隐藏所有您不想打印的内容。

<style type="text/css" media="print">
   .no-print { display: none; }
</style>

最后一种方法需要在服务器上进行一些工作。您可以将所有HTML +
CSS发送到服务器,并使用许多组件之一来生成可打印文档(例如PDF)。我已经尝试使用PhantomJs进行安装。



 类似资料:
  • 问题内容: 我创建了一个简单的电话目录,并且能够通过单击按钮来打开Whatsapp联系人。 这是示例代码: 如何通过单击android中的按钮来打开Whatsapp组? 希望给我任何建议! 问题答案: 您必须使用群组链接。当用户安装您的应用程序时,您应该要求他们从whatsapp组信息中复制组链接,然后将其存储以直接从您的应用程序访问该组。该链接仅对群组管理员可见,因此,如果用户不是管理员,则应指

  • 我正在我的演示应用程序中使用这个datepicker https://www.npmjs.com/package/react-datepicker但是我的datepicker是在我点击输入字段时打开的。当用户点击右侧的按钮和图标而不是点击输入时,我们可以打开日期选择器吗?

  • 在我点击提交按钮后,我如何使页面刷新或更新页面中的内容?我尝试将(我知道不是React方式,具有相同的结果)放入提交函数(、)中,但POST请求没有得到响应 OpenTickets.js CardConversation.jsx

  • 编辑:底部的解决方案 这是一个跳棋游戏。单击一个按钮后,它等待单击第二个按钮与之交换。然而,有时你可能不想移动那个按钮,但一旦你点击了它,就没有回头路了,因为我无法禁用它。 在这里的其他帖子中,我看到人们使用 这只是使它在第一次单击后不可见。 这什么都干不了。 这也没什么用。编辑:所有这些方法都用true和false进行了尝试。 私有无效交换(){ 但你也需要 这样它就重新启用了它,或者其他什么,

  • 我正在编写一个包含许多按钮的程序,当我单击其中一个按钮时,我希望它打开一个包含一些txt文件信息的JTextArea。我试图将JTextArea添加到按钮中,但它没有打开任何东西。我是Java新手,所以我不知道这是否是正确的方法。 我在GUI中定义了按钮和JTextArea 这是我在public void actionPerformed(ActionEvent e)中编写的代码

  • 问题内容: 我正在尝试在应用程序中实现一项功能,当互联网连接不可用时会显示警报。该警报具有两个操作(“确定”和“设置”),每当用户单击设置时,我都希望以编程方式将其设置为电话设置。 我正在使用Swift和Xcode。 问题答案: 使用 Swift 5.1更新 斯威夫特4.2