Кто-нибудь настраивал электрон для передачи компонента PDFViewer, который затем отображается в DOM из React? Я могу отобразить пустое поле, потому что файл blob и html не передаются в DOM, как в простом приложении React. Файл blob просят сохранить где-нибудь, а не просто использовать его в DOM, как это делает простое приложение React.
Я думаю, что информацию PDFViewer нужно каким-то образом передать через package.json / webpack электрону main.dev.ts для правильного отображения в DOM.
Я также получаю утечку памяти из-за монтирования и размонтирования PDFViewer:
Предупреждение: невозможно выполнить React обновление состояния отключенного компонента. Это не операция, но она указывает на утечку памяти в вашем приложении. Чтобы исправить, отмените все подписки и асинхронные задачи в методе componentWillUnmount. in InternalBlobProvider (созданный PDFViewer) в PDFViewer (at tearDownSummery.tsx: 9) в div (at tearDownSummery.tsx: 8)
Это то, что я должен назвать свой компонент 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.