Handlebars自定义Helper的使用方法

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Handlebars自定义Helper的使用方法相关的知识,希望对你有一定的参考价值。

环境是backbone!

首先要声明:

1 Handlebars.registerHelper(‘roomnameDisplay‘, function(flag) {
2   return flag?‘roomname-hide‘:‘‘;
3 });

在模板里的调用:

var SecretList = fliza.List.extend({
        …………其他代码
‘   <a class="fromroom {{roomnameDisplay roomnameHide}}" target="_blank">[{{rooname}}]</a>‘+  
        …………其他代码    
});

在模型(数据)里逻辑处理:

roomnameHide:v.from_client_roomname == roomConfig.roominfo.room_name

回顾一下整个流程:

1、首先用registerHelper注册了个roomnameDisplay 的Helper,接收一个flag的参数。根据flag的真假来返回字符串‘roomname-hide‘或‘‘;

2、模型(数据)里,用变量roomnameHide来存储两个数据的值是否相等。

3、在模板里调用注册的roomnameDisplay的Helper,模板里的roomnameHide会根据模型里的值按声明里的设定进行编译。

这一切,像极了声明函数、传参调用!

 

以上是关于Handlebars自定义Helper的使用方法的主要内容,如果未能解决你的问题,请参考以下文章

Handlebars Block Helper:每个都有排序

handlebars 判断要加表达式怎么加

js模版引擎handlebars.js实用教程——由于if功力不足引出的Helper

构建帮助方法

如何在 Handlebars 和 Puppeteer 中使用自定义字体?

如何在车把 ember 中定义自定义助手