En el manillar, ¿hay un operador ternario? No me refiero a if else
; Me refiero como a == true ? "a" : "b"
.¿Hay un operador ternario en handlebars.js?
Respuesta
Puede construir su propio ayudante en barras de mano si realmente lo desea. Algo así como ternary(a==true, "a", "b")
. Para obtener más información al respecto, consulte el documentation. La idea de m90 no es la idea detrás de los manubrios. La idea es no tener un código explícito en sus plantillas, solo llamadas a ayudantes y objetos.
como http://stackoverflow.com/q/29441130/770127 – ryanve
El helper if
se puede utilizar como un operador ternario pasandole tres argumentos.
En el siguiente ejemplo, un botón tiene un valor predeterminado de "Save Changes"
, pero cuando model.isSaving
es verdadero, el valor cambia temporalmente a Saving...
.
<button>{{if model.isSaving "Saving..." "Save Changes"}}</button>
... alternativamente, se utiliza dentro de otro ayudante:
{{input type="submit" value=(if model.isSaving "Saving..." "Save Changes")}}
tengo un ayudante para este (tener en cuenta que otros ayudantes también se pueden utilizar en el interior) https://gist.github.com/terion-name/d87ed8907f1bb2e25f32
// app/helpers/iftrue.js
import Ember from 'ember';
export function iftrue(params) {
if (params[0]) {
return params.length === 2 ? params[0] : params[1];
}
if (params.length === 2) {
return params[1];
} else if (params.length === 3) {
return params[2];
}
return null;
}
export default Ember.Helper.helper(iftrue);
Con dos parámetros: si el primer parámetro se evalúa como verdadero, se imprimirá; de lo contrario, el segundo
{{iftrue project.price 'N/A'}} // $9.99
{{iftrue project.priceNotAvailable 'N/A'}} // N/A
con tres parámetros: si primer parámetro se evalúa como verdadera segunda se imprimirá, de lo contrario tercera
// If deadline is set formatted date will be printed, otherwise 'N/A'
{{iftrue project.deadline (moment-format project.deadline 'DD.MM.YYYY') 'N/A'}}
Si bien este enlace puede responder a la pregunta, es mejor incluir las partes esenciales de la respuesta aquí y proporcionar el enlace de referencia. Las respuestas de solo enlace pueden dejar de ser válidas si la página vinculada cambia. - [De la crítica] (/ review/low-quality-posts/10731433) –
@progressive_overload edited, thanx – Terion
Este continuación código puede utilizarse para ternario o cualquier tipo de expresión eval.
Advertencia: utilice este código en caso de que eval se pueda utilizar de forma segura.
{{#if (myfunc "(a[0] + 1) % 2 === 0" arg1)}}
{{/if}}
{{#if (myfunc "(a[0] + a[1]) % 2 === 0" arg1 arg2)}}
{{/if}}
manillar helper función
myfunc: (exp, ...a) => {
return eval(exp);
}
- 1. ¿Hay un operador ternario condicional en VB.NET?
- 2. Javascript abreviada operador ternario
- 3. retorno en php operador ternario
- 4. Python operador ternario
- 5. ternario Operador similar a:?
- 6. ternario operador en Razor Ver
- 7. Operador ternario para NumPy ndarray?
- 8. Llamada a un método usando Operador Ternario
- 9. Un operador ternario triple anidado algo doloroso
- 10. ¿Debe incluir un valor falso en un operador ternario PHP?
- 11. C++, operador ternario, std :: cout
- 12. instrucción Return utilizando operador ternario
- 13. ¿Existe el operador ternario en R?
- 14. if/else vs operador ternario
- 15. tiro y el operador ternario en C++
- 16. Ternario? operador contra el operador convencional Si-else en C#
- 17. El operador ternario (condicional) en C
- 18. JAVA llamando a un método usando un operador ternario
- 19. Delphi - ¿Equivalente al operador ternario de C#?
- 20. python? (condicional/ternario) operador para las asignaciones
- 21. ternario (condicional) del operador y de estilo
- 22. matrices de inicialización utilizando operador ternario
- 23. ¿Es este un uso razonable del operador ternario?
- 24. Ventajas del uso del operador condicional?: (Ternario)
- 25. Recordando la sintaxis del operador ternario
- 26. Resultado del operador ternario no es un valor
- 27. Operador ternario: ¿mala o buena práctica?
- 28. FizzBuzz usando el operador condicional ternario
- 29. Usando operador ternario con 4 expresiones
- 30. Usar el operador ternario para operaciones múltiples
manillares es sólo JavaScript, por lo que el operador ternario funcionará igual que en JavaScript. – m90
¿Has consultado el sitio web oficial: http://handlebarsjs.com/? Contiene tutoriales ... –
He revisado el sitio web oficial. Pero no vi las explicaciones del operador ternario. – shawnXiao