2013-04-12 37 views
2

我有把手的看法,我想在它检查是否一个变量,如果JS ==“富”车把和其他如

<div class="title"><label for="inputSearch">{{#if variable == 'foo'}} AAA {{else}} BB {{/if}}</label></div> 
    <ul class="top-buttons"> 
    <li class="back"><a href="#" id="priev_es">Wstecz</a></li> 
    <li class="more"></li> 
    </ul> 
</div> 

但我在控制台此错误:

handlebars.js:286Error: Parse error on line 2: 
{{#if variable == 'foo'}} AAA {{else 
----------------^ 
Expecting 'DATA', 'STRING', 'INTEGER', 'BOOLEAN', 'ID', got 'EQUALS' 

回答

1

Handlebars没有执行平等检查的内置语法。

你必须在JavaScript中放入这种逻辑,而不是你的模板。

你可以express it as a helper,你可以从你的模板调用。

+0

我有返回值的使用,如果其他人: Handlebars.registerHelper( '语言',函数(){ 如果(语言== PL) { 回归真实; }其他{ 回报假; } }); 和TPL {{#如果语言}} EN {{}其他PL {{/ if}个} 但在这个错误。 我做错了什么? –

+0

你有一个错误,所以是的,你做错了什么。错误应该告诉你什么。我看不到你得到的错误报告。 – Quentin

+0

TypeError:'undefined'不是一个对象(评估'depth0.language') –

0

您必须将参数发送到您绑定名称'language'的annonymous函数,然后比较这2个参数并返回true或false。据车把