我有一个关于res.render的问题。我正在尝试为我的网站构建一个非常简单的消息传递功能,而不是像个人消息,Dms等实时聊天。我正在使用把手来渲染html和node.js.
app.get('/dashboard/messages/',ensureAuthenticated,function(req,res) {
res.render('messages');
Msg.find({ username: req.user.username }, 'username message sender', function (err, msg) {
if (err) {
console.log('notfound')
return handleError(err);
} else{
var msgSender = []
msg.forEach(function(msg){
var Obj = {
'sender': msg.sender,
'message':msg.message
}
msgSender.push(Obj)
})
console.log(msgSender.sender)
res.render('messages',{'sender': msgSender.sender, 'message': msgSender.message})
主要问题是如果我放置一个for循环,渲染只会加载发送给用户的最后一条消息。而且你也不能设置标题。我在考虑做一个
res.send{'sender': msgSender.sender, 'message': msgSender.message})
。这是handblebar代码:
<div class="panel panel-default">
<div class="panel-heading">
<h3 class="panel-title">Messages</h3>
</div>
<div class="panel-body">
<h1>From: {{sender}}</h1>
<h3><p>Message: {{message}}</p></h3>
</div>
</div>