Node.js 手柄已预编译为普通HTML
有没有办法将把手模板预编译为纯HTML?Handlebar预编译生成一个js文件。我可以在节点上运行JS来生成HTML文件吗?这就是我尝试的方式:Node.js 手柄已预编译为普通HTML,node.js,typescript,handlebars.js,Node.js,Typescript,Handlebars.js,有没有办法将把手模板预编译为纯HTML?Handlebar预编译生成一个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
// 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);
此操作失败,因为compiled.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);
可惜文件里没有 那么请接受你的回答:)谢谢你的分享,我会的,但明天才能!文档确实令人困惑,我希望对车把工作原理有深入了解的人能够帮助我更新更多细节。