2013-05-16 5 views

Odpowiedz

7

Nie sądzę, że to możliwe warunkach łańcuchowych tak jak w kierownicach - nie mogę znaleźć niczego w dokumentacji.

Można by zagnieździć je jednak tak:

{{#if ClientController.Client.number}} 
    {{#if PhoneController.hasLinesToInstall}} 
     ... 
    {{/if}} 
{{/if}} 

To by osiągnąć ten sam rezultat.

+0

to jej moje rozwiązanie kopii zapasowej, ale dzięki dowolny sposób. –

+3

@Juanito - Robiłem trochę więcej czytania i znalazłem kilku ludzi mówiących explicity, że to nie jest *** możliwe i że jest to cecha projektowa kierownic (zmusza do zachowania twoich szablonów czyste i wolne od logiki, które należy gdzie indziej). http://stackoverflow.com/questions/8853396/logical-operator-in-a-handlebars-js-if-conditional#comment-11152800 http://blog.teamtreehouse.com/handlebars-js-part-2-partials i pomocników – Anonymous

+0

Dzięki za pomoc;) –

1

To nie jest obsługiwana out-of-the-box, ale można użyć dodatek https://github.com/jmurphyau/ember-truth-helpers:

ember install ember-truth-helpers 

Następnie w szablonie:

{{#if (and ClientController.Client.number PhoneController.hasLinesToInstall)}} 
    ... 
{{/if}}} 

Wcześniej zrozumienie wspólnotowych było to, że szablony powinny być w dużej mierze wolne od logiki. Nadgodziny, nasz punkt widzenia przesunął się w kierunku umieszczania bardziej deklaratywnej logiki w szablonach - wraz z ember-truth-helpers, ember-composable-helpers jest tego świetnym przykładem.

1

Dla mnie to działało:

Ember.computed.and('firstComputedProperty', 'secondComputedProperty')