Wie implementiere ich nicht mit if-Anweisung in Ember-Lenkern?


176

Ich habe eine Aussage wie diese:

{{#if IsValid}}

Ich möchte wissen, wie ich eine negative ifAussage verwenden kann, die so aussehen würde:

{{#if not IsValid}}

Antworten:


414

Einfache Antworten auf einfache Fragen:

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

Denken Sie auch daran, dass Sie ein {{else}}Zwischenzeichen zwischen ein {{#if}}oder {{#unless}}und das schließende Tag einfügen können .


Danke, ich denke, dass sie es {{#ifnot flag}} anstelle von {{#unless flag}} nennen sollten.
Fabio Caccamo

2
@FabioCaccamo Die ursprünglichen Implementierer waren / sind Rubyisten, bei denen unlesses sich um eine ziemlich häufige Inversion von handelt if.
Christopher Swasey

35

Sie haben viele Möglichkeiten, dies zu tun.

1. Verwenden Sie {{unless}}:

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

2. Verwenden Sie den Inline-If-Helfer:

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

3. Verwenden Sie das Addon Ember-Truth-Helfer :

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

Für die nächste Verwendung sehr nützlich befunden: {{input type = "text" ... disabled = (not someProperty) ...}}
lesyk

5

Dies kann auf verschiedene Arten erfolgen.

1 Verwendung unless

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

2.Verwenden if else

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

3. notHelfer benutzen

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

3

unlessBlockhelfer (eingebauter Helfer)

unlessHelfer ist die Umkehrung des ifHelfers.

Sein Block wird gerendert, wenn der Ausdruck einen falschen Wert zurückgibt.

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

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

Hier items.length .. Wenn es einen Wert außer null zurückgibt, wird nur es in die if-Schleife eingegeben.

HINWEIS: Sie können auch Boolesche Werte überprüfen. Im If-Block

{{#if booleanFloag}}

0

Die folgenden Anweisungen helfen vollständig, wenn Sie if und else verwenden möchten:

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

HINWEIS: Schließen Sie den if-Block erst, wenn die Logik beendet ist ...

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.