8

如何做双重条件 {{#if person && work}} ?&& 似乎不是有效的运算符

4

2 回答 2

8

我不相信车把支持 {{#if}} 语句中的多个项目(相关:handlebars.js {{#if}} 条件中的逻辑运算符)。

您可以将控制器/视图中的多个值折叠成单个计算属性,并在模板中检查该单个值。当任何一个原始值更新时,这个新的计算属性将更新:

App.ValuesTestController = Ember.Controller.extend({
    value1: false,
    value2: true,
    value1and2: function(){
            return this.get('value1') && this.get('value2');
    }.property('value1', 'value2')
});

您的模板将如下所示:

<div>{{#if value1 }}value 1 true{{/if}}</div>
<div>{{#if value2 }}value 2 true{{/if}}</div>
<div>{{#if value1and2 }}value 1 and 2 true{{/if}}</div>
于 2013-01-04T00:56:47.813 回答
3

即使@CraigTeegarden 的答案是优雅的,我也发现了一些案例,这种解决方法让我的生活更轻松,因此让我更快乐:

{{#if person}}
  {{#if work}}
    Yeah!
  {{/if}}
{{/if}}
于 2016-03-14T15:36:31.480 回答