车把新手,我已经注册了一个帮手,我无法弄清楚什么似乎是一个简单的任务:如何将表达式传递给车把助手。
让我们说:
Handlebars.registerHelper('or', function (v1, v2) {
return (v1 || v2) ? options.fn(this) : options.inverse(this);
}
使用时:
{{#conditional @index this.warranty_id !== "DEFAULT_FACTORY" }}
当然它失败了,我无法弄清楚它是如何运作的。我需要的是传递的表达式返回一个布尔值作为帮助器内的v2值。
任何帮助将不胜感激。
答案 0 :(得分:1)
您需要编写helper
来检查!==
,然后将其作为子表达式嵌套在or
帮助程序中。
OR
帮助
Handlebars.registerHelper('or', function (v1, v2) {
return (v1 || v2) ? options.fn(this) : options.inverse(this);
}
!==
帮助
Handlebars.registerHelper('ne', function (v1, v2) {
return (v1 !== v2);
}
然后在你的模板中:
{{#or @index (ne this.warranty_id "DEFAULT_FACTORY")}}