尝试下载PDF的网页,使用角。有时它有效,有时它不工作:页面是用{{ }不解释的方式呈现的。
我如何下载完整呈现的页面的PDF (有一些HTTP请求是用角度完成的,还有很多数据操作是在显示数据之前完成的)?
编辑(代码)(代码不相关):
后端:
...
wkhtmltopdf(url, options, function(code, signal) {
//'url' points to a route that has 'res.render()' binded to it
//Download the file
});
...
res.render('template', { data: data });
...前端:
<html>
<head>
...
</head>
<body>
<div ng-app=".." class="container" ng-controller="..">
</div>
<script src='/angular/lib/jquery/jquery.min.js'></script>
<script src='//ajax.googleapis.com/ajax/libs/jqueryui/1.10.4/jquery-ui.min.js'></script>
<script src='/angular/lib/bootstrap/bootstrap.min.js'></script>
<script src='/angular/lib/angular/angular.min.js'></script>
<script src='/angular/lib/underscore/underscore.js'></script>
<script src='/angular/lib/morris/morris.min.js'></script>
<script src='/angular/lib/morris/raphael-min.js'></script>
...
</body>
</html>发布于 2015-04-16 01:03:59
您需要确保Javascript在wkhtmltopdf完成其呈现之前有时间执行。至少有两种方法可以做到这一点:
--javascript-delay选项,以便在转换为pdf之前给页面足够的时间来呈现。--window-status选项。如果这样做,wkhtmltopdf将不会呈现pdf,直到值window.status等于您通过该选项传递的字符串。然后,在您的应用程序中,您应该在页面呈现后手动设置此值。https://stackoverflow.com/questions/24553373
复制相似问题