使用jspdf中的.html时,对空PDF做出反应



我正试图从我的react组件创建一个pdf。我使用renderToHTML使其成为字符串,并使用充当.fromHTML((的.html,但当我单击按钮触发generatePDF函数时,它只下载包含空白内容的pdf。如何解决此问题?

我的组件代码:

import React from 'react'
import { Container, Row, Col } from 'react-bootstrap'
const PDF = () => {
return (
<Container fluid style={{width: "21cm", height: "29,7cm", margin:"",}}>
<h1 >UD-SUPERJAYA</h1>
<p className="fontBold">Invoice #0178832</p>
<hr />
<Row>
<Col lg={6}>
<p className="fontBold">Invoiced to</p>
<p>slow fast Mahendra</p>
<p>Jalan Kalimantan No 29, jawa Kota, 1</p>
<p>Indonesia</p>
</Col>
<Col lg={6} className="text-end">
<p className="fontBold">Pay to</p>
<p>PT sea sea</p> <br />
<p>NPWP: 94090239402940290</p>
<p>No PKP: PGM-432423/dad.1.1/321/KR0239/32131312</p>
<p>Tgl Pengukuhan: 17 Desember 2013</p>
<br/>
<p>Alamat:</p>
<p>Jalan Kalimantan No 29, USKota, Jawa</p>
<p>Telp: 0822 3323 3333</p>
</Col>
</Row>
</Container>
)
}
export default PDF

我的主要应用程序代码:

const generatePDF = () => {
const stringify = renderToString (<PDF /> ) 
var doc = new jsPDF('p', 'mm');
doc.html(stringify);
doc.save('Invoice.pdf')
}
return (
<>
<Row>
<Col lg={12} className="text-end fontMedium">
<Button onClick={generatePDF} className="invoicebutton">Submit</Button>
</Col>
</Row>
</>

我认为,如果您正在调用doc.save((方法,那么doc.html((方法还没有完成。

最新更新