2014-03-27 18 views
2

我不能想出一个办法做这样的事情在流星和车把上的模板:流星把手:在比较两个变量的条件下,正确的方法是什么?

{{#if var1 == var2}} 
{{/if}} 

我还设置了Meteor Handlebars Helpers,这似乎不是太while it should工作:

{{#if $eq var1 var2}} 
{{/if}} 

那么你有什么正确的方法来比较两个变量与模板中的把手?

编辑:实际上,这似乎超越了手柄意识形态,那就是那there should be no logic in templates

+0

Handlebars已被弃用,如果您使用Handlebars佣工,您将无法升级到Meteor的新版本。请参阅0.8 rc公告和文档。 –

+0

感谢您提供此信息。顺便说一下,什么意思rc? –

+1

发布候选人 –

回答

3

现在,这不像您可能考虑的那样简单。我以为我读过这可能是流星1.0的一个特性。

您有以下3种可能:

HTML:

<template name="stuff"> 
    {{#if isTrue}} 
    ... 
    {{else}} 
    ... 
    {{/if}} 
</template> 

JS:

Template.stuff.helpers({ 
    isTrue: function() { 
    return var1 === var2; 
    } 
}); 

另一种可能性是提供自己的车把帮手:

HTML:

{{compare "var1" "var2"}} 

JS:

Handlebars.registerHelper('compare', function(var1, var2) { 
    return var1 === var2; 
}); 

您也可以使用其中已经有人做的工作,你的任何其他车把帮手包。我不知道你使用的软件包,所以我不能提供关于你的问题的详细解决方案,但也许你会对如何实现这个问题有一个很好的看法。

相关问题