2012-02-02 21 views
21

Tengo un objeto javascript obj y el valor de la clave puede ser true o false.Moustache javascript: cómo manejarlo con valores booleanos

Este valor se pasa a la plantilla de bigote.

// javascript objeto

obj = { 
    like: true // or false 
} 

// plantilla

<span> 
    {{ like }} 
</span> 

Ahora me gustaría tener el resultado de la prestación de esta manera:

<span> 
    Like <!-- If {like: true} ---> 
</span> 

<span> 
    Unlike <!-- If {like: false} ---> 
</span> 

¿Cuál es la mejor forma de hacerlo en plantilla de bigote?

Respuesta

45

es como esto:

<span> 
    {{#like}} 
     Like <!-- If {like: true} ---> 
    {{/like}} 
    {{^like}} 
     Unlike <!-- If {like: false} ---> 
    {{/like}} 
</span> 
+0

podemos poner la condición como (como == 2) ... {{# like == 2}} –

+0

Para hacer algo más complejo que "if" o "unless", necesitarás crear un helper. Algo como esto: https://gist.github.com/doginthehat/1890659 – kcent

10

sólo tiene que utilizar una sección y una sección invertida:

{{#like}} 
<span> 
    Like <!-- If {like: true} ---> 
</span> 
{{/like}} 

{{^like}} 
<span> 
    Unlike <!-- If {like: false} ---> 
</span> 
{{/like}} 
+2

me gusta esta respuesta mucho más que la respuesta aceptada porque el lapso resultante puede tener su propio clase que debería aplicarse en consecuencia. Por ejemplo, el "Me gusta" o el "Aversión" pueden mostrarse como un pulgar hacia arriba o hacia abajo. – JGallardo

Cuestiones relacionadas