Handlebars辅助函数if的扩展

handlebars在JS渲染html的时候功能非常强大,有许多内置的函数供使用,比如说 if 函数,

{{#if data}}<div></div>{{/if}}就可以判断在存在data的时候渲染内部html,这就是一个简单的 if 函数

但总不可能所有的逻辑都能考虑到,如果if里面还有一些复杂的逻辑,就不能处理了,所以就有了一些自定义函数

  Handlebars.registerHelper("ifExpress",function(a,b,options){
	if(a  b){
		//a 和b满足一定的关系
		return options.fn(this);//这个就相当于满足这个条件,执行ifExpress下面的一段代码
//options.fn(this)表示选择这个
	}else{
		
		return options.inverse(this);//表示不选择这个,选择else
	}
 
	});
在模版中的用法就是
{{#ifExpress a b}}
<div>11</div>     //满足条件输出此内容
{{else}}
<div>22</div>//不满足条件时候
{{#ifExpress}}
此时这个辅助函数就相当于一个if函数,只是有了更多的逻辑,由于有了options,表明此helper相当于一个block块,有一定的语法结构,要加#,不像一般的help不需要#号就可以调用(供自己记录所用)
原文链接 http://www.cnblogs.com/iyangyuan/p/3471350.html
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值