Come implementare non con l'istruzione if nel manubrio Ember?


179

Ho una dichiarazione come questa:

{{#if IsValid}}

Voglio sapere come posso usare ifun'affermazione negativa che sarebbe simile a quella:

{{#if not IsValid}}

Risposte:


418

Risposte semplici per domande semplici:

{{#unless isValid}}
{{/unless}}

Anche tenere a mente che è possibile inserire un {{else}}tra una {{#if}}o {{#unless}}e il tag di chiusura.


Grazie, penso che dovrebbero chiamarlo {{#ifnot flag}} invece di {{#unless flag}}.
Fabio Caccamo,

2
@FabioCaccamo Gli implementatori originali erano / sono Rubyist, dove unlessc'è un'inversione abbastanza comune di if.
Christopher Swasey,

35

Hai molti modi per farlo.

1. Usa {{unless}}:

{{#unless isValid}}
  ...
{{else}}
  ...
{{/unless}}

2. Utilizzare l'helper inline-if:

{{#if (if isValid false true)}}
  ...
{{else}}
  ...
{{/if}}

3. Usa il componente aggiuntivo ember-truth- helpers:

{{#if (not isValid)}}
  ...
{{else}}
  ...
{{/if}}

Trovato abbastanza utile da usare nel prossimo modo: {{input type = "text" ... disabled = (not someProperty) ...}}
lesyk

5

può essere fatto in più modi.

1 utilizzo unless

{{#unless IsValid}}
<Your Code>
{{/unless}}

2.Use if else

{{#if IsValid}}
{{else}}
<Your Code>
{{/if}}

3.uso di notaiuto

{{#if (not IsValid)}}
<Your Code>
{{/if}}

3

unlessblock helper ( aiuto incorporato)

unlesshelper è l'inverso ifdell'helper.

Il suo blocco verrà reso se l'espressione restituisce un valore errato.

  {{#unless valid}}
  <h3 class="warning">WARNING</h3>
  {{/unless}}

1
{{#if items.length}}
    //Render
{{/if}}

Qui items.length .. se restituisce un valore tranne null, solo allora entrerà nel ciclo if.

NOTA: è possibile controllare anche i valori booleani. Nel blocco If

{{#if booleanFloag}}

0

Di seguito le dichiarazioni aiuteranno completamente se si desidera utilizzare se e altrimenti:

{{#if author}}
    <h1>{{firstName}} {{lastName}}</h1>
{{else}}
    <h1>Unknown Author</h1>
{{/if}}

NOTA: non chiudere il blocco if fino al completamento della logica ...

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.