在选择更改时使用玉渲染局部视图

时间:2013-02-12 15:02:22

标签: node.js express pug

我需要做以下事情,

我有<select>(团队名称列表),当用户选择团队时,我会获得相关信息:团队并显示它。

我如何在玉器中这样做?

我正在尝试以下方法,(但我显然错了,我没有看到很多文档)。

简单地说,我在主页上正在include test.jaderes.render('test', {team: team_obj});

h1 #{team}.name
h2 #{team}.homeGround
h3 #{team}.manager
h4 #{team}.aka

的NodeJS:

collection.findOne(query, function(err, team_obj){
    res.render('test', {team: team_obj});
});

我在team_obj中正确获取了信息。

运行应用时出现以下错误

  

团队未定义

现在发生了这种情况,因为在test.jade提供team_obj之前include正在呈现。

问题:

1)我这样做了吗?是option部分渲染玉视图的正确方法吗?如果是,我如何确保仅在用户选择{{1}}?

时才呈现

2)我不知道玉有部分观点概念吗?

1 个答案:

答案 0 :(得分:0)

1)您应该使用#{team.name}

2)更改选择器后,您无法更改团队对象。模板使用数据库结果呈现一次。 - 此类功能应由客户端JavaScript和AJAX调用处理。模板中的部分只是一种分享常见模板的方式,它通过include在Jade中完成。

我不知道你在渲染和包含什么,以及什么时候..但你使用像#{team.name}这样的模板变量,你必须确保模板是用团队对象渲染的。