如何使用Jade迭代数组创建一个html表

时间:2011-10-27 19:53:01

标签: node.js express pug

我从node expressjs框架开始,我遇到了这个我无法解决的问题。

我正在尝试显示包含一些博客文章的表格(是的,博客......)但我还是没有完成。

这是Jade模板代码:

div
  table
    thead
      tr: th Posts
    tbody
      each post, i in userPosts
        tr(class=(i % 2 == 0) ? 'odd' : 'even'): a(href='/admin/post/' + post.id) #{post.author} - #{post.title}

这是HTML输出:

<div>
  <a href="/admin/post/1">Post 1</a>
  <a href="/admin/post/2">Post 2</a>
  <a href="/admin/post/3">Post 3</a>
  <table>
    <thead>
      <tr>
        <th>Posts</th>
      </tr>
    </thead>
    <tbody>
      <tr class="odd"></tr>
      <tr class="even"></tr>
      <tr class="odd"></tr>
    </tbody>
  </table>
</div>

那么,有什么想法吗?

2 个答案:

答案 0 :(得分:32)

我发现问题是我错过了每个TR的TD标签。 所以玉代码应该是这样的:

div
  table
    thead
      tr: th Posts
    tbody
      each post, i in userPosts
        tr
          td 
            a(href='/admin/post/' + post.id) #{post.author} - #{post.title}

答案 1 :(得分:7)

试试这个

div
  table
    thead
      tr: th Posts
    tbody
      each post, i in userPosts
        tr(class=(i % 2 == 0) ? 'odd' : 'even') 
          td
            a(href='/admin/post/' + post.id) #{post.author} - #{post.title}