使用PDF.JS

时间:2019-05-13 15:58:00

标签: reactjs pdf.js

我正在React中的pdf.js上编写包装。首先,我用getDocument()加载pdf文档,然后用专用组件渲染每个页面,该组件创建画布并绘制pdf文件(根据pdf.js API)。一切正常,唯一的问题是控制台中的错误:

  

列表中的每个孩子都应该有一个唯一的“关键”道具。

每个pdf页面的关键是什么?页面似乎没有唯一键。

我尝试了uniqueId()中的lodash;由于某种原因,它不起作用。我尝试了new Date().getTime(),也尝试为每个键提供了数组索引,但是我遇到了同样的错误。

{[...Array(this.state.numberOfPages)].map((_, page) => {
  return (
    <div style={{ width: '100%' }}>
   <PdfRenderer 
// im a component that does pdfDocument.getPage(currentPage)
     key={page}
     pdfDocument={this.state.pdfDocument}
     currentPage={page}
     scale={currentScale}
   />
  {this.renderLoading()}
</div>
);
})}

1 个答案:

答案 0 :(得分:3)

您应该将mvn:org.apache.karaf.decanter/apache-karaf-decanter/1.0.0/xml/features 道具传递给key而不是<div>,因为<PdfRenderer>是实际的子元素。

<div>