reactjs - React-pdf - 点击按钮下载 pdf
问题描述
单击页面上的特定按钮时,我正在尝试生成和下载 PDF,重要的是单击按钮时我必须执行其他指令。
用于创建我正在使用的 PDFReact-pdf
我正在尝试,PDFDownloadLink
但我找不到是否有办法在下载开始之前注入验证。
我的 PDF 看起来像这样
const MyDoc = () => (
<Document>
<Page>
<View>
<Text>Hello World!</Text>
</View>
<View>
<Text>We're inside a PDF!</Text>
</View>
</Page>
</Document>
);
并下载执行
<PDFDownloadLink document={<MyDoc />} fileName="xyz.pdf">
{({ blob, url, loading, error }) => (loading ? 'Loading document...' : 'Download now!')}
</PDFDownloadLink>
但正如我所说,我想在下载开始之前执行操作,但我不需要干涉 pdf 内容
你有什么建议吗?
解决方案
我的按钮:
<button onClick={this.submitForm}>Send</button>
和submitForm
方法:
submitForm = async (event) => {
event.preventDefault(); // prevent page reload
const blob = await pdf(
<MyDoc />
).toBlob();
saveAs(blob, 'wycena.pdf');
}
推荐阅读
- c# - 使用 ProtoBuf-Net 在网络上自我描述消息
- sorting - 如何使用 React Admin 进行本地排序和过滤?
- wordpress - 关于订单取消的 woocommerce 确认消息
- python - 为什么 Tensorflow 没有以正确的顺序执行 tf.Session() 中的语句?
- wordpress - ReferenceError: Backbone is not defined word press add post
- json - 如何在 OPENJSON 函数中进行 sql 子查询?
- arrays - 将阵列拆分为多个阵列性能
- ios - 当我设置 UIButton 的标题时,它无法通过 'UIButton.setTitle()' 工作
- vue.js - Vue Js Axios 响应无法访问 this.data
- r - 如何获取某个元素在某个范围内的另一列中出现的次数?