In manubri, c'è un operatore ternario? Non intendo if else
; Voglio dire come a == true ? "a" : "b"
.Esiste un operatore ternario in handlebars.js?
risposta
È possibile creare il proprio helper in handlbar se lo si desidera. Qualcosa come ternary(a==true, "a", "b")
. Per ulteriori informazioni su questo vedi lo documentation. L'idea di m90 non è l'idea dietro il manubrio. L'idea è di non avere codice esplicito nei tuoi modelli, solo chiamate ad aiutanti e oggetti.
come http://stackoverflow.com/q/29441130/770127 – ryanve
L'helper if
può essere utilizzato come operatore ternario passando tre argomenti.
Nell'esempio seguente, un pulsante ha un valore predefinito di "Save Changes"
, ma quando model.isSaving
è true, il valore viene temporaneamente modificato in Saving...
.
<button>{{if model.isSaving "Saving..." "Save Changes"}}</button>
... In alternativa, utilizzate all'interno di un altro aiutante:
{{input type="submit" value=(if model.isSaving "Saving..." "Save Changes")}}
ho un aiutante per questo (attenzione che altri soccorritori possono essere utilizzati anche all'interno) 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 due parametri: se il primo parametro viene valutato su true, verrà stampato, altrimenti secondo
{{iftrue project.price 'N/A'}} // $9.99
{{iftrue project.priceNotAvailable 'N/A'}} // N/A
Con tre parametri: se il primo parametro restituisce true secondo sarà stampato, tuttavia terzo
// If deadline is set formatted date will be printed, otherwise 'N/A'
{{iftrue project.deadline (moment-format project.deadline 'DD.MM.YYYY') 'N/A'}}
Sebbene questo collegamento possa rispondere alla domanda, è meglio includere qui le parti essenziali della risposta e fornire il link per riferimento. Le risposte di solo collegamento possono diventare non valide se la pagina collegata cambia. - [Dalla recensione] (/ recensione/post di bassa qualità/10731433) –
@progressive_overload modificato, grazie – Terion
Questo sotto codice può essere utilizzato per ternaria o qualsiasi tipo di espressione eval.
Avvertenza: utilizzare questo codice in uno scenario in cui Eval può essere utilizzato in modo sicuro.
{{#if (myfunc "(a[0] + 1) % 2 === 0" arg1)}}
{{/if}}
{{#if (myfunc "(a[0] + a[1]) % 2 === 0" arg1 arg2)}}
{{/if}}
manubrio helper funzione
myfunc: (exp, ...a) => {
return eval(exp);
}
- 1. Esiste un operatore ternario condizionale in VB.NET?
- 2. Esiste un operatore ternario in T-Sql?
- 3. Operatore ternario in C
- 4. Nullptr in operatore ternario
- 5. Come riscrivere Swift ++ operatore in:? Ternario operatore
- 6. Operatore ternario (alternative)
- 7. Operatore ternario in JSTL/EL
- 8. Il VHDL ha un operatore ternario?
- 9. Simula operatore ternario in elisir
- 10. C++ operatore ternario
- 11. Javascript stenografia operatore ternario
- 12. chiamata singolo operatore ternario
- 13. operatore ternario e firma
- 14. Risultato operatore ternario Javascript
- 15. ternario Operatore simile a:?
- 16. operatore ternario con ampersand
- 17. Formato operatore ternario corretto
- 18. Come scrivere un operatore ternario PHP
- 19. Inizializzazione array con un operatore ternario?
- 20. Ruby operatore ternario senza altro
- 21. operatore ternario, senza l'espressione mezzo
- 22. Operatore ternario e imprevisto NullPointerException
- 23. array Initialize utilizzando operatore ternario
- 24. Operatore ternario all'interno di printf
- 25. Operatore ternario senza secondo operando
- 26. Operatore ternario difficile da leggere
- 27. operatore ternario in C vs C++
- 28. Uso incremento operatore ternario in C
- 29. errori usando operatore ternario in c
- 30. JSLint mette in guardia circa operatore ternario
manubrio è solo JavaScript, quindi l'operatore ternario funziona proprio come in JavaScript. – m90
Hai controllato il sito web ufficiale: http://handlebarsjs.com/? Contiene tutorial ... –
Ho controllato il sito web ufficiale. Ma non ho visto le spiegazioni del ternary oprerator. – shawnXiao