Jade无法读取每个循环中未定义的属性“长度”
我有我的控制器中的代码从mongo中检索一个对象,并将其发送到客户端:
index: function(req, res){ List.find({user:req.session.user.id}).exec(function foundLists(error, foundLists) { if(error) { return res.json({error:error}); } else { return res.view({ title:'Lists',lists:foundLists }); } }); }
在我看来,我做了以下几点:
extends ../layout block content .container p #{lists}
其中呈现: [object Object],[object Object]
如果我做p= JSON.stringify(lists)
它呈现:
[{"user":"546109c0d640523d1b838a32","name":"third","createdAt":"2014-11-11T19:39:36.966Z","updatedAt":"2014-11-11T19:39:36.966Z","id":"546265f83e856b642e3b3fed"},{"user":"546109c0d640523d1b838a32","name":"forth","createdAt":"2014-11-11T19:42:09.268Z","updatedAt":"2014-11-11T19:42:09.268Z","id":"546266913e856b642e3b3fef"}]
我试图达到:
#lists each list in lists p #{list}
但是我得到这个错误: Cannot read property 'length' of undefined
我正在使用Sails和Jade 1.7.0
你有一个对象数组,所以如果你在each list in lists
做each list in lists
那么list
就是一个对象。 我想翡翠想要一个string。 如果你把p #{list.name}
或类似的东西应该工作。
如果你想展示一切你可以尝试嵌套你的循环
each list in lists each item in list p #{item}