Pug的高级占位符和Express



我知道哈巴狗中的标准占位符系统如何工作。

res.render('index', { title: 'Chat'}

将在#{title}

我也从API中获取我的对象,例如

res.render('index', { title: 'Chat', name: obj[1].pseudo});

用作#{name}

但这是我的问题。

我想在 #{user:6:name}这样的哈巴狗中让占位符,它将是 obj[6]pseudo

有办法完成这样的事情吗?

还是另一个?我有大约60个配置文件数据,我想在模板中使用如此灵活的数据。

这是我的index.js

    /* GET home page. */
router.get('/', function(req, res, next) {
    Request.get("https://cmediaapi.datingpartner.com/content/v3_real/profiles", (error, response, data) => {
      if(error) {
          return console.dir(error);
      }
      // console.dir(JSON.parse(data));
      obj = JSON.parse(data);
      // console.dir(obj[1].pseudo);
      res.render('index', { title: 'Chat', name: obj[1].pseudo});
    });
});

非常感谢您的帮助和想法!

帕格插值使用JavaScript表达式。

通过当地人以:

res.render('index', { title: 'Chat', name: obj });

使用标准JavaScript登录器:

#{name[1].pseudo}

我也发现在其他情况下可能会有所帮助。

当您想在循环中拥有特殊数量的用户ID时。

此示例从用户ID 10开始,以用户ID结束。

ul#list
        //- li.user #{user[2].pseudo}       
        each user in obj.slice(10, 40)
            li(class='user')
                div.thumb
                    img(src='https://images.url.com/' + user.image_300x300)
                div.info(onclick="location.href='/user/" + user.pseudo + "?" + ref + "'")
                    p= user.pseudo
                    p #{user.age} Jahre | #{user.city}

相关内容

  • 没有找到相关文章

最新更新