javascript - 带变量的 Jade 模板(nodejs 服务器端)

标签 javascript node.js express pug

所以我想显示一个联系人列表,为此我已将每个联系人 div 转换为 Jade 代码,但我仍然需要填充相关字段。我可以在服务器端这样做吗?我正在使用 nodejs 作为服务器代码。联系人的 Jade 模板为:

//  
    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:mail@company.com') mail@company.com
      //
        left-img
      ul.share-ul
        li
              a.edit(href='#') Edit
        li
          a.share(href='#') Share
        li
          a.delete(href='#') Delete
    //
      img-cont

因此,如果有办法表示我想要那里的变量,而不是让 John Doe 和随机电话号码,然后 nodeJS 代码将在那里粘贴正确的值并将联系人 Jade 添加到主 Jade 页面,然后转到下一个联系人等等。所以类似这样的东西:http://embeddedjs.com/

我使用 express 作为 Nodejs 的框架。

最佳答案

是的,您可以在调用 render 时使用数据传递对象

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

那么在 Jade 里面你就可以做

span #{pageData.name[0]}

或者如果你想要一个循环

each item in pageData.name
  span #{item}

您可以在 github 页面上找到更多信息 https://github.com/visionmedia/jade

关于javascript - 带变量的 Jade 模板(nodejs 服务器端),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9931531/

相关文章:

javascript - 对 jQuery 中的 hide().after ("") 感到好奇

javascript - 使用 shinyjs 和 flexdashbord 动态显示/隐藏输入

javascript - 防止 Svg 文本重叠

session - Node.js expressjs session 不会停留在 Firefox 中

javascript - Dojo 如何解析整个 JsonRestStore(JSON 到字符串)

javascript - 如何导出 .then() block 之外的数据(SuperAgent 库)?

javascript - 尝试构建项目抛出 : requires callback functions but got a [object Promise]?

node.js - 如何根据日期过滤 Bunyan 日志?

node.js - 如何使用 Nodejs 和 Multer 发布图像?

javascript - 将文件从 Node 发送到客户端以供下载