我正在尝试为Handlebars.js编写一个条件if语句帮助器.基本上,如果是Apply Now页面,我想在链接上放置一个"活动"类.
帮手:
Handlebars.registerHelper('isApplyNow', function(block) {
if(this.title == "Apply Now") {
return block(this);
} else {
return block.inverse(this);
}
});
Run Code Online (Sandbox Code Playgroud)
和模板:
<ul>
{{#each pages}}
<li>
{{#isApplyNow}}
<a href="{{url}}" class ='active'>{{this.title}}</a>
{{else}}
<a href="{{url}}">{{this.title}}</a>
{{/if}}
</li>
{{/each}}
</ul>
Run Code Online (Sandbox Code Playgroud)
但是,我得到一个非常简单的javascript错误:
Uncaught [object Object] in handlebars-1.0.0.beta.2.js:595
Run Code Online (Sandbox Code Playgroud)
任何人都可以看到我写这个不正确吗?
谢谢!
参考文章:
http://thinkvitamin.com/code/handlebars-js-part-2-partials-and-helpers/
kap*_*ron 21
我确实看到一个小的语法错误,我认为可能是问题.如果您打算使用一个包含块的帮助器,则必须使用帮助程序名称将其关闭.看看我是如何取代你{{/if}}的{{/isApplyNow}},就像这样:
{{#isApplyNow}}
<a href="{{url}}" class ='active'>{{this.title}}</a>
{{else}}
<a href="{{url}}">{{this.title}}</a>
{{/isApplyNow}}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
19591 次 |
| 最近记录: |