【发布时间】:2015-11-05 13:28:07
【问题描述】:
如何将 jsrender 模板传递给 jsreport?
jsreport 内容部分需要 html。如何在 jsreport 内容部分使用该 jsrender 模板
var jsreport = require('jsreport');
// Require the jsrender node module
var jsrender = require('jsrender');
// Load a template
var tmpl = jsrender.templates('./personTemplate.html');
// Render
var html = tmpl.render({data: 'hello'});
// Generating PDF file using jsreport
jsreport.render({
template: {
content: ,
engine: "jsrender",
recipe: "phantom-pdf"
}
}).then(function(out){
out.stream.pipe(fs.createWriteStream('..//test.pdf'));
});
【问题讨论】:
-
事实上 node-jsrender 节点模块不再需要,因为 jsrender 本身就是一个节点模块。见jsviews.com/#jsr-node-quickstart。我更新了您的代码以直接使用 jsrender。
-
使用 var html = jsrender.renderFile('./personTemplate.html', {data: 'hello'}) 工作。将 var html 传递给 jsreport 内容。