在熟悉mustache.js模板风格之后,我希望在node.js中继续使用它。
我已经成功安装并确认了它正在运行,但是我不知道如何将其用于模板文件。
我该如何加载名为template.html
的模板,并在node.js中应用mustache的特性呢?
fs.readFileSync
是fs.readFile
的同步版本,因此它会阻塞。下面是一个基本示例,展示如何在回调中使用fs.readFile
和mustache.js,这将返回mustache模板。
var object_to_render = {key: "value", ...};
fs.readFile(path_to_mustache_template, function (err, data) {
if (err) throw err;
var output = Mustache.render(data.toString(), object_to_render);
// do something with output...
});
function loadTemplate(template) {
return this.fs.readFileSync(app.set('views') + template+ '.html').toString();
}
var html = Mustache.to_html(loadTemplate('myView'), {key: "value", ...});
res.send(html);