【发布时间】:2020-01-28 10:32:13
【问题描述】:
我试图了解Handlebars helpers 的论点是如何产生的。
我了解实际调用的函数,但不了解它们需要的参数是如何提供给它们的。
示例 1 - 内置 Helper:
Handlebars.registerHelper("if", function(conditional, options) {
if (conditional) {
return options.fn(this);
} else {
return options.inverse(this);
}
});
通过调用
{{#if blockExists}}
//blalba
{{/if}}
什么是conditional 和options,它们实际上是如何解析为函数的?
示例 2 - 自定义助手:
Handlebars.registerHelper('concat', (str1, str2, separator) => {
return `${str1 || ''}${separator || ''}${str2 || ''}`;
});
这个 Helper 是怎么调用的?参数是如何解析的?由于返回值不是true 或false,如何使用?
感谢您的帮助。
【问题讨论】:
标签: javascript templates handlebars.js