所以我有2个助手,#hex
在单独使用时可正常工作,#rgb
在直接传递颜色时也能正常工作。但是,理想情况下,我希望在调用#hex
帮助程序时使用我的#rgb
帮助程序,但我没有太多运气。这是我到目前为止所拥有的。
帮助者中的助手 - 没有按预期工作:
{{#rgb {{#hex color}}{{/hex}} -0.25}}
对上述内容的预期示例:
{{#rgb #abc123 -0.25}}
这是否可以在车把中实现,或者如果我写了一个包含我的#rgb
助手和#hex
助手的新助手会更容易吗?
答案 0 :(得分:1)
您可以使用括号而不是大括号来执行此操作:
{{helper1 (helper2 var1) var2}}
示例:
// dummy helpers
Handlebars.registerHelper('rgb', function(color, opacity) {
return color + ' ' + opacity;
});
Handlebars.registerHelper('hex', function(color) {
return color + 'hexified';
});
// now in template
var template = '{{rgb (hex color) -0.25}}';
Handlebars.compile(template)({color: 'green'});
//Outputs "greenhexified -0.25"
答案 1 :(得分:0)
{{outer-helper (inner-helper 'abc') 'def'}}