2012-03-29 48 views
25

所以我想显示的联系人列表和我已经改变了每个联系人的div攻玉代码,但我还是要填写相关的字段。我可以在服务器端做到吗?我使用nodejs作为服务器代码。联系人的玉模板是:与变量(服务器的NodeJS侧)玉模板

// 
    img-cont 
    .img-cont 
     // 
     img-cont 
     .left-img 
     // 
      left-img 
     .img-box 
      img(src='assets/img/img.jpg', alt='') 
     .name 
      h6 
      span John Doe 
      img(src='assets/img/star-b.png', alt='') 
      p 
      strong Phone number: 
      | +1 234 567890 
      p 
      strong Email address: 
      a(href='mailto:[email protected]') [email protected] 
     // 
     left-img 
     ul.share-ul 
     li 
       a.edit(href='#') Edit 
     li 
      a.share(href='#') Share 
     li 
      a.delete(href='#') Delete 
    // 
     img-cont 

因此而不是李四和随机电话号码,如果有一种方式来表示,我想变量在那里,然后将代码的NodeJS将坚持在在那里有正确的值,并将联系人玉添加到主玉页,然后转到下一个联系人等等。因此,一些与此类似:http://embeddedjs.com/

我用快递作为一个的NodeJS框架。

回答

65

是的,你可以做到这一点,当你调用渲染过程与数据的对象

res.render('your page', {pageData: {name : ['name 1', 'name 2']}}); 

然后里面的玉,你可以做

span #{pageData.name[0]} 

,或者如果你想有一个循环

each item in pageData.name 
    span #{item} 

你可以找到更多GitHub的页面https://github.com/visionmedia/jade

+1

或者jade-lang.com但在GIT树的例子可能是最好的文档。 – 2012-03-30 01:49:58

+0

有没有办法从模板中访问页面的名称?例如。 PAGETITLE =#{ '你的网页'} – funseiki 2014-04-03 22:24:02

+1

@funseiki请参阅此相关的问题:http://stackoverflow.com/q/24855111/1715579 – 2014-07-20 22:05:13