[英]Handlebars + handlebars-helper-prettify in node.js: empty result
我尝试通过以下代码将把手与修饰工具一起使用:
var handlebars = require("handlebars");
var helpers = require('prettify');
var templateHtml = "{{#prettify}}<div class='entry'><h1>{{title}}</h1><div class='body'>{{body}}</div></div>{{/prettify}}";
var templater = handlebars.compile(templateHtml);
var transformedHtml = templater({
title: "Hello World",
body: "De kat krabt de krullen van de trap"
});
console.log(transformedHtml);
但是我得到了一个空洞的结果。 我在这里想念什么? 如果我删除{{#prettify}和{{/ prettify}},则可以使用(但打印效果不佳!)
该帮助程序是为在汇编中使用而构建的,因此需要调用一个register
方法才能工作:
var handlebars = require("handlebars");
var helpers = require('prettify');
helpers.register(handlebars);
var templateHtml = "{{#prettify}}<div class='entry'><h1>{{title}}</h1><div class='body'>{{body}}</div></div>{{/prettify}}";
var templater = handlebars.compile(templateHtml);
var transformedHtml = templater({
title: "Hello World",
body: "De kat krabt de krullen van de trap"
});
console.log(transformedHtml);
那应该工作。 注意,prettify返回一个Handlebars.SafeString(),因此除非您在prettify
标签之外添加更多标记,否则transformedHtml
将是一个javascript对象。 您会看到我的意思是,在templateHtml
字符串的开头和结尾使用带空格和不带空格的方式运行它。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.