2014-07-26 8 views
10

Ich mag die Jade-Syntax nicht wirklich und fragte mich, ob ich diesen einfachen Vergleich mit hoganJS stattdessen machen könnte?Hogan JS IF-Anweisungen

Der Beispielcode ist in JADE geschrieben.

Ich habe etwas gegoogelt und es scheint gemischte Meinungen zu geben .. Ich will nur wissen, ob es einen Weg gibt oder muss ich etwas ändern?

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

block body 

Antwort

21

Hogan ist eine Implementierung von , so dass die gleiche Syntax gilt.

{{#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 Früher habe ich darüber diskutieren, ob Hogan zu verwenden oder eine andere Schnurrbart Implementierung über Lenker, weil es etwas schneller war/leichter. Mein Rat ist, Lenker nicht Hogan zu verwenden, und kompiliere dein Frontend und benutze nur die Lenker-Laufzeit auf Build - weil es eine schönere bedingte Syntax hat und ein paar mehr nützliche Dinge unterstützt, ohne zu übertreiben.

In Handlebars wäre es der Reiniger sein:

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

Aber trotzdem Hogan ist immer noch schön, so Ihre Wahl. Ich mag Jade auch nicht, es erinnert mich an CoffeeScript oder so.

+1

Prost Kumpel, hatte ich eigentlich komplett über Lenker vergessen. Prost für die Hilfe! :) – user61026

+0

@ user61026 no prob –

+0

nur noch eine kurze Frage kann Hogan Vorlagen von einander erben? – user61026