【问题标题】:How to use dictionaries passed via res.render in node.js (Express)如何在 node.js (Express) 中使用通过 res.render 传递的字典
【发布时间】: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.log session.name 等来检查值。

标签: javascript node.js express pug


【解决方案1】:

这对我来说也是个大问题。

我用过这样的东西:

return res.render(path)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-12-24
    • 2015-02-11
    • 1970-01-01
    • 2022-01-26
    • 1970-01-01
    • 2016-04-23
    • 2012-10-17
    • 2012-12-11
    相关资源
    最近更新 更多