¿Cómo implementar no con la declaración if en Ember Handlebars?

179

Tengo una declaración como esta:

{{#if IsValid}}

Quiero saber cómo puedo usar una ifdeclaración negativa que se vería así:

{{#if not IsValid}}
Kapil Garg
fuente

Respuestas:

418

Respuestas simples para preguntas simples:

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

También tenga en cuenta que puede insertar una etiqueta {{else}}entre {{#if}}o o {{#unless}}y la etiqueta de cierre.

Christopher Swasey
fuente
Gracias, creo que deberían llamarlo {{#ifnot flag}} en lugar de {{#unless flag}}.
Fabio Caccamo
2
@FabioCaccamo Los implementadores originales eran Rubyist (s), donde unlesses una inversión bastante común de if.
Christopher Swasey
35

Tienes muchas formas de hacerlo.

1. Uso {{unless}}:

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

2. Utilice el auxiliar en línea if:

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

3. Use el complemento ember-truth-helpers :

{{#if (not isValid)}}
  ...
{{else}}
  ...
{{/if}}
Daniel Kmak
fuente
Se encontró bastante útil para usar de la siguiente manera: {{input type = "text" ... disabled = (not someProperty) ...}}
lesyk
5

Se puede hacer de múltiples maneras.

1 uso unless

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

2.uso if else

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

3.use notayudante

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

unless ayudante de bloque ( incorporado)

unless ayudante es el inverso de la if helper.

Su bloque se representará si la expresión devuelve un valor falso.

  {{#unless valid}}
  <h3 class="warning">WARNING</h3>
  {{/unless}}
Lorem Ipsum Dolor
fuente
1
{{#if items.length}}
    //Render
{{/if}}

Aquí items.length ... si devuelve algún valor excepto nulo, solo entrará en el bucle if.

NOTA: También puede verificar los valores booleanos. En el bloque If

{{#if booleanFloag}}
Venkat Thotakura
fuente
0

Las siguientes declaraciones ayudarán por completo si desea usar if y else:

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

NOTA: No cierre el bloque if hasta que la lógica termine ...

Venkat Thotakura
fuente