我真的不喜欢jade语法,并且想知道我是否可以使用hoganJS进行这种简单的比较?
示例代码是用JADE编写的。
我做了一些谷歌搜索,似乎有不一致的意见..我只是想知道是否有办法或我是否需要改变一些东西?
if user
li
a(href='/dashboard') Dashbaord
li
a(href='/logout') Logout
else
li
a(href='/login') Logi§n
block body
答案 0 :(得分:23)
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}
但无论如何Hogan仍然很好,所以你的选择。我也不喜欢Jade它让我想起了CoffeeScript或其他东西。