Заявления Hogan JS IF

Мне не нравится синтаксис jade, и мне было интересно, могу ли я сделать это простое сравнение, используя hoganJS?

Пример кода написан в JADE.

Я сделал несколько поисковых запросов и, кажется, смешанное мнение. Я просто хочу знать, есть ли способ или мне нужно что-то изменить?

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

block body

Ответ 1

Hogan - это реализация Mustache, поэтому применяется тот же синтаксис.

{{#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 Я обсуждал, следует ли использовать Hogan или какую-то другую реализацию Mustache поверх Handlebars, потому что она была немного быстрее/легче. Мой совет - использовать Handlebars, а не Hogan, и скомпилировать ваш интерфейс и использовать только время работы Handlebars при сборке - потому что он имеет более удобный условный синтаксис и поддерживает несколько полезных вещей, не переходя выше.

В Handlebars это будет чище:

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

Но во всяком случае Хоган по-прежнему хорош, поэтому ваш выбор. Мне также не нравится Джейд, это напоминает мне CoffeeScript или что-то в этом роде.