2014-07-26 12 views
10

Non mi piace molto la sintassi di giada e mi chiedevo se potevo fare questo semplice confronto usando invece hoganJS?dichiarazioni Hogan JS IF

Il codice di esempio è scritto in JADE.

Ho fatto un po 'di ricerca su Google e sembra esserci un parere contrastante .. Voglio solo sapere se c'è un modo o dovrò cambiare qualcosa?

if user 
li 
    a(href='/dashboard') Dashbaord 
li 
    a(href='/logout') Logout 
else 
li 
    a(href='/login') Logi§n 

block body 

risposta

21

Hogan è un'implementazione di Mustache quindi applica la stessa sintassi.

{{#user}} 
    <li><a href="/dashboard">Dashboard</a></li> 
    <li><a href="/logout">Logout</a></li> 
{{/user}} 
{{^user}} 
    <li><a href="/login">Login</a></li> 
{{/user}} 

PS Ho usato per discutere se utilizzare Hogan o qualche altra implementazione Baffi oltre Manubrio perché era po 'più veloce/più leggero. Il mio consiglio è di usare Handlebars non Hogan e compilare il front-end e utilizzare solo il runtime di Handlebars su build - perché ha una sintassi condizionale più gradevole e supporta alcune altre cose utili senza andare troppo in alto.

In Handlebars sarebbe il più pulito:

{{#if user}} 
... 
{{else}} 
... 
{{/if} 

Ma comunque Hogan è ancora bello, così la vostra scelta. Anche a me non piace Jade, mi ricorda CoffeeScript o qualcosa del genere.

+1

Accidenti, mi ero completamente dimenticato del manubrio. Saluti per tutto l'aiuto! :) – user61026

+0

@ user61026 no prob –

+0

solo un'altra domanda veloce può ereditare i modelli hogan l'uno dall'altro? – user61026