2017-09-30 3 views
0

나는 reactJs에 새로왔다. 나는 보고서를 생성하기위한 구성 요소를 만들었고 노드 모듈로서 그것을 PHP 응용 프로그램에 가져 왔고 main.version.js, main.version.css 파일을 사용한다는 점에서 멋있는 템플릿 (.tpl)을 만들었습니다. 빌드 및 데이터 특성에 의해 구성 요소에 필요한 데이터를 전달하고 나는 보고서를 볼 수 있어요. 이제 문제는 브라우저에서 인쇄 하이퍼 링크를 클릭 할 때 pdf를 생성해야한다는 것입니다. 이를 위해 wkhtmltopdf 변환기를 사용하여 다른 pdfs를 병합하고 하나의 pdf를 생성 할 수 있습니다. 여기 빈 페이지가 나타납니다. 반응이있는 구성 요소 컨텐트에서 제대로 작동하지만 작동하지 않는 텍스트를 제공하면됩니다. 이 반응 구성 요소에는 실패합니다. 저를 올바른 방향으로 인도하십시오. 내가 이해한다면phpwkhtmltopdf를 사용하여 pdf를 생성하는 반응

<html> 
<head> 
    <link href="{$baseUrl}node_modules/react-component-report/build/main.xxx.css" rel="stylesheet" type="text/css"/> 
</head> 
<body> 
    <div id="root" data-title="Hello" data-name="World" data-reportcontent='{literal}{"users": [11,5],"dates": "2017-09-17" }{/literal}'></div> 
    <script src="{$baseUrl}node_modules/react-component-report/build/main.xxx.js"></script> 
</body> 
</html> 

답변

0

제대로 wktohtml 명령 행 유틸리티입니다, 당신은 코드를 반응 포함 된 웹 페이지의 URL에 그것을 가리키고있다. 해당 명령 줄 유틸리티를 사용하여 반응 생성 페이지를 PDF로 렌더링하려고합니다.

이것이 맞는 경우 문제는 반응이 클라이언트 측 언어이므로 실제로 렌더링하려면 javascript가 필요하다는 것입니다.

명령 줄에서 curl과 동일한 URL을로드하여 스크립트가 렌더링하려고하는 HTML을 볼 수 있습니다. 앱에 탑재 될 스크립트 태그와 빈 래퍼가 포함되어 있음을 알 수 있습니다.

react.js를 node.js을 사용하여 렌더링하는 방법이 있거나 다른 PDF 생성 방법을 살펴볼 수 있습니다. This library은 브라우저에서 PDF를 생성 할 수있는 것처럼 보입니다.

이 문제가 해결 될 수있는 방법을 몇 가지 더 많은 예제는 여기에서 찾을 수 있습니다 : http://blog.stahlmandesign.com/export-html-to-pdf-how-hard-can-it-be/

+0

@srivi을,이 귀하의 질문에 대답합니까? – Mobius

관련 문제