如何将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'));
});
最佳答案
jsreport 将为您编译并渲染 jsrender 模板。您应该将模板字符串传递给内容。
jsreport.render({
template: {
//content: '{{:foo}}'
content: fs.readFileSync('personTemplate.html'),
engine: "jsrender",
recipe: "phantom-pdf",
data: { 'foo': 'hello' }
}
})
如果您想自行编译和渲染模板,可以将引擎设置为none
,并向内容
提供最终的html。
关于node.js - 使用 jsrender 从 jsreport 渲染并返回 pdf 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33545806/