1. 程式人生 > >react-pdf-js前端處理PDF的一種方式

react-pdf-js前端處理PDF的一種方式

react-pdf-js前端處理PDF的一種方式

import React from 'react';
import PDF from 'react-pdf-js';

class MyPdfViewer extends React.Component {
  state = {};

  onDocumentComplete = (pages) => {
    this.setState({ page: 1, pages });
  }

  handlePrevious = () => {
    this.setState({ page: this
.state.page - 1 }); } handleNext = () => { this.setState({ page: this.state.page + 1 }); } renderPagination = (page, pages) => { let previousButton = <li className="previous" onClick={this.handlePrevious}><a href="#"><i className="fa fa-arrow-left"></i>
Previous</a></li>; if (page === 1) { previousButton = <li className="previous disabled"><a href="#"><i className="fa fa-arrow-left"></i> Previous</a></li>; } let nextButton = <li className="next" onClick={this.handleNext}><a href=
"#">Next <i className="fa fa-arrow-right"></i></a></li>; if (page === pages) { nextButton = <li className="next disabled"><a href="#">Next <i className="fa fa-arrow-right"></i></a></li>; } return ( <nav> <ul className="pager"> {previousButton} {nextButton} </ul> </nav> ); } render() { let pagination = null; if (this.state.pages) { pagination = this.renderPagination(this.state.page, this.state.pages); } return ( <div> <PDF file="test.pdf" onDocumentComplete={this.onDocumentComplete} page={this.state.page} /> {pagination} </div> ) } } export default MyPdfViewer;

codepen地址

參考連結

  1. npm地址
  2. github地址
  3. demo地址 等待載入,一下就好

未完待續。。。