如何将复杂的对象数组传递给Jade模板?
问题描述:
我有这样的玉snippt:如何将复杂的对象数组传递给Jade模板?
div.comment_list
- var clist = comment_list
each comment in clist
div.comment
div.comment_detail
span.commentator comment.commentator
span.comment_time comment.comment_time
span.comment_content comment.comment_content
的comment_list
是我进入玉模板。
的问题是: 每个数组元素comment
由复合对象,因为您看见其中,, 具有commentator
,comment_time
,和comment_content
。
然而,玉不能识别这个事实,它只是输出:comment.commentator
comment.comment_time
,comment.comment_content
vebatim。
那么如何解决这个问题呢?
答
你不需要- var
一切无论是。例如。
div.comment_list
each comment in comment_list
div.comment_detail
span.commentator #{comment.commentator}
span.comment_time #{comment.comment_time}
span.comment_content #{comment.comment_content}
如果您要输出单个变量,则不需要#{}
包装。只有当你在那里混合纯文本时才需要它。
div.comment_list
each comment in comment_list
div.comment_detail
span.commentator= comment.commentator
span.comment_time= comment.comment_time
span.comment_content= comment.comment_content
而且div的是多余的 - 你可以简单地我们.class
或#id
或两者兼而有之。显然,如果你没有设置课程或ID,你需要在那里有div
这个词。
.comment_list
each comment in comment_list
.comment_detail
span.commentator= comment.commentator
span.comment_time= comment.comment_time
span.comment_content= comment.comment_content
答
我已经想通了。
让代码来说话:
div.comment_list
- var clist = comment_list
each comment in clist
- var commentator = comment.commentator
- var comment_time = comment.comment_time
- var comment_content = comment.comment_content
div.comment_detail
span.commentator #{commentator}
span.comment_time #{comment_time}
span.comment_content #{comment_content}
谢谢!好答案! – larmbr 2013-05-11 02:45:00