React-pdf: 无法旋转单个页面

创建于 2017-11-27  ·  3评论  ·  资料来源: wojtekmaj/react-pdf

当我尝试旋转单个页面(而不是整个文档)时,没有页面旋转。

在我的示例中,我尝试仅旋转第 2 页,但两个页面均未旋转显示。

import React, { Component } from 'react';
import { Document, Page } from 'react-pdf';
import samplePdf from './sample.pdf';

class PdfViewer extends Component {
  render() {
    return (
        <Document file={samplePdf}>
          <Page pageNumber={1} />
          <Page pageNumber={2} rotate={90}/>
        </Document>
    );
  }
}

export default PdfViewer;

检查代码似乎我找到了错误的来源。 请参阅内联说明。

文件:Document.jsx/方法:renderChildren

...
  renderChildren() {
    const { children, className, rotate } = this.props;
    const { pdf } = this.state;
    const { linkService, registerPage, unregisterPage } = this;

    const childProps = {
      linkService,
      registerPage,
      unregisterPage,
      pdf,
      rotate,
    };

    //
    //  BUG FIX 
    // 
    // At this point childProps.rotate is "undefined" due to it's assigned from <Document> props. When React.cloneElement is called bellow for each page, childProps.rotate is overwriting the rotate prop of the original <Page> so it's allways set to "undefined". My following piece of code seems to fix the issue:
    if (typeof(childProps.rotate) === 'undefined'){
      delete childProps.rotate;
    }
...

所有3条评论

@herneli
谢谢你的这份报告! 很快就会解决这个问题。

@herneli
很高兴地通知 v2.4.2 已发布,它包含针对此问题的修复程序 :) 让我知道您的想法。

非常感谢。 做得好!!!

此页面是否有帮助?
0 / 5 - 0 等级

相关问题

shivekkhurana picture shivekkhurana  ·  4评论

GManzato picture GManzato  ·  4评论

wojtekmaj picture wojtekmaj  ·  4评论

wangzhidavid picture wangzhidavid  ·  4评论

Solitaryo picture Solitaryo  ·  5评论