是否有人设置了电子传递PDFViewer组件,然后从React中显示给DOM?我能够显示一个空框,因为blob文件和html没有像在一个简单的React应用程序中那样传递给DOM。blob文件被要求保存在某个地方,而不是像简单的React应用程序那样仅仅使用DOM。
我认为PDFViewer信息需要通过package.json/webpack传递到电子main.dev.ts文件中,以便正确地显示给DOM。
由于正在挂载和卸载PDFViewer,我还会发现内存泄漏:
警告:无法对卸载的组件执行响应状态更新。这是一个非操作,但它表示您的应用程序中存在内存泄漏。若要修复,请取消componentWillUnmount方法中的所有订阅和异步任务。在InternalBlobProvider中(由PDFViewer创建)在div (at tearDownSummery.tsx:8)中的PDFViewer (at tearDownSummery.tsx:9)中
这就是我必须将我的pdf组件称为我所设置的,它的工作原理是显示给DOM。下载链接工作,我得到了我的PDF结构通过。
import React from 'react';
import { PDFViewer, PDFDownloadLink } from '@react-pdf/renderer';
import ReactDOM from 'react-dom';
import TearDownPDF from './tearDowSummeryPDF';
export default function TearDownSummery() {
return (
<div>
<PDFViewer>
<TearDownPDF />
</PDFViewer>
<PDFDownloadLink document={<TearDownPDF />} fileName="IIR.pdf">
{({ blob, url, loading, error }) =>
loading ? <i> Loading document...</i> : <i> Download Pdf </i>}
</PDFDownloadLink>
</div>
);
}
ReactDOM.render(<TearDownSummery />, document.getElementById('root'));这是我的GitHub项目:https://github.com/staniszmatt/iir_Report.git --都是在pdfSetup分支上设置的。
发布于 2020-08-06 21:06:52
目前,电子没有能力使用@react的基础上,我发现这篇文章。
https://github.com/electron/electron/issues/13038
如果电子增加了这种能力,我将不得不再次回答。
https://stackoverflow.com/questions/63286153
复制相似问题