Dav*_*lay 2 node.js handlebars.js typescript
有没有一种方法可以将Handlebars模板预编译为纯HTML?车把预编译产生一个js文件。我可以在节点上运行该JS来生成HTML文件吗?这就是我正在尝试的方法:
// Get a Handlebars instance
var hb = require("handlebars");
// Load a template
import fs = require('fs');
var template:string = fs.readFileSync('templates/template.handlebars','utf8');
// Compile said template
var compiled = hb.precompile(template);
// Write JS file
fs.writeFileSync('compiled/template.js', compiled);
var test = compiled.main();
// Write HTML file
fs.writeFileSync('compiled/template.html', test);
Run Code Online (Sandbox Code Playgroud)
这是因为编译失败。main不是函数。虽然那里有一个主要功能,我正在尝试达到。
找到了解决方案。您无需预编译,只需编译然后运行已编译的模板即可:
// Get a Handlebars instance
var hb = require("handlebars");
// Load a template
import fs = require('fs');
var template:string = fs.readFileSync('templates/template.handlebars','utf8');
// Compile said template
var compiled = hb.compile(template);
var html = compiled({});
// Write HTML file
fs.writeFileSync('compiled/template.html', html);
Run Code Online (Sandbox Code Playgroud)
可惜它不在文档中。
| 归档时间: |
|
| 查看次数: |
533 次 |
| 最近记录: |