我计划在我的下一个项目中使用Hogan.js。我试着用它。我只是被困住了,无法找到如何在Hogan.js中使用助手。我以前经常用把手。有什么办法可以在霍根身上找到类似的东西吗?
发布于 2015-02-24 13:54:51
来自hogan.js官方网站
hogan.js是针对胡子测试套件开发的,因此这里指定的模板中适用的所有内容也适用于Hogan.js。
请查看络腮胡以获得对特性的全面解释。尤其是关于lambda表达式的部分。
下面是hogan.js和handlebars.js实现的示例比较。
模板
{{#bold}}
Willy is awesome.
{{/bold}}Hogan.js
{
"bold": function() {
return function(text, render) {
return "<b>" + render(text) + "</b>"
}
}
}Handlebars.js
Handlebars.registerHelper('bold', function(options) {
return new Handlebars.SafeString(
'<b>' + options.fn(this) + '</b>'
);
});输出
<b>Willy is awesome.</b>发布于 2016-02-26 18:36:19
在我找到关于兰巴达的霍根问题之前,我一直很难处理这个问题
它不再需要传递给助手。
模板
{{#foo}}
Lets put this text in a html tag.
{{/foo}}Hogan.js
"foo": function() {
return function(text) {
return "<p>" + text + "</p>"
}输出
<p>Lets put this text in a html tag.</p>我的问题更难一点,因为我有:
模板
{{#foo}}
{{bar}}
{{/foo}}因此,传递给助手的text就是"{{bar}}" Hogan.js。
"foo": function() {
return function(text) {
// First get the rendered bar variable
var bar = Hogan.compile(text).render(this));
return "<p>" + bar + "</p>"
}https://stackoverflow.com/questions/20566975
复制相似问题