【发布时间】:2014-03-17 20:38:50
【问题描述】:
我在处理程序(路由器)中有下一个代码:
res.render('./game/home', {username:req.session.name, resources:player.getResources(req.session.name)});
getResources() 方法返回一个像这样的字典:
{wood: 500, stone: 500, iron:300}
所有变量都可以,但是我已经尝试了 100 种在翡翠模板中使用它的方法,但它不起作用。
这就是我使用变量的方式:
Hi, #{username}. You have #{resources.wood} wood.
username 可以,但是会抛出下一个错误:
"Cannot read property 'wood' of undefined"
其次,如何将“resources”(来自 res.render)的值分配给本地的 jam 变量?
【问题讨论】:
-
username的值是多少?当你得到字典和得到undefined时,你是否用相同的值调用getResource(注意它区分大小写)? -
您的 getResources 调用实际上是同步“返回”某些东西,而不是在数据库或任何异步的东西中查找它?
-
看起来
player.getResources(req.session.name)失败了,所以你应该也发布这个函数,并且 console.logsession.name等来检查值。
标签: javascript node.js express pug