我正在慢慢学习nodejs,express和jade。以下是我想要实现的目标:
ul.nav
- var obj = { 'home':'i.icon-home.icon-white Home', 'about':'About' }
- each val, key in obj
- if (id == key)
li.active
a(href='#{key}') #{val}
- else
li
a(href='#{key}') #{val}
基本上,我正在尝试打印导航列表,但对于“Home”li,我希望能够在它之前显示一个小图标。但是不是将变量中的玉编译为HTML,而是将其打印出纯文本(如果我用我想要使用的html包装它。这些条件对我的程序是必不可少的,所以任何帮助都会非常有益,谢谢非常!!!
答案 0 :(得分:5)
如果您的行以-
开头,那么您编写JavaScript。
否则就是玉
Jade有自己的条件和流量控制结构和关键字(each
,if
和else
),所以不要在它们前面添加-
ul.nav
each val, key in obj
if id == key
li.active
a(href='#{key}') #{val}
else
li
a(href='#{key}') #{val}
答案 1 :(得分:0)
我会把你的玉器换一下。
像这样在obj上使用for:
- for(var key in obj){
a(href='#'+key)= obj[key]
- }
答案 2 :(得分:0)
内部' href'键入'#' +键
ul.nav
- var obj = { 'home':'i.icon-home.icon-white Home', 'about':'About'}
each val, key in obj
if id == key
li.active
a(href='#'+key) #{val}
else
li
a(href='#'+key) #{val}