Nic*_*icO 3 javascript templates handlebars.js
我试图理解把手助手的论点是如何产生的。
我了解所调用的实际函数,但不了解如何为其提供所需的参数。
示例 1 - 内置 Helper:
Handlebars.registerHelper("if", function(conditional, options) {
if (conditional) {
return options.fn(this);
} else {
return options.inverse(this);
}
});
Run Code Online (Sandbox Code Playgroud)
被称为通过
{{#if blockExists}}
//blalba
{{/if}}
Run Code Online (Sandbox Code Playgroud)
它们是什么conditional以及options如何实际解析为函数?
示例 2 - 自定义助手:
Handlebars.registerHelper('concat', (str1, str2, separator) => {
return `${str1 || ''}${separator || ''}${str2 || ''}`;
});
Run Code Online (Sandbox Code Playgroud)
这个助手怎么称呼?参数是如何解析的?由于返回值不是trueor ,如何使用它false?
我很感激任何帮助。
文档:具有多个参数的助手
您的 hbs 文件:
{{concat "str1" "str2" "separetor"}}
Run Code Online (Sandbox Code Playgroud)
第一个参数是助手的名称,其他参数是参数
您的帮手:
Handlebars.registerHelper('concat', (str1, str2, separator) => {
return `${str1 || ''}${separator || ''}${str2 || ''}`;
});
Run Code Online (Sandbox Code Playgroud)
{{expression}} 返回的值可以是字符串,您应该将其传递给return new Handlebars.SafeString(result);
| 归档时间: |
|
| 查看次数: |
8209 次 |
| 最近记录: |