【发布时间】:2016-07-31 08:24:40
【问题描述】:
在我的 HTML 文件中,我有一个像这样的 #each 循环:
{{#each messages}}
{{> chat_message}}
{{/each}}
在我的助手类中,我正在调用一个方法来从 Chats 集合中检索聊天消息:
Template.chat_page.helpers({
messages:function(){
if(!Meteor.user()){
alert("Please log in to chat with someone");
return;
}
else{
var chatId = Meteor.call("startChat",Session.get("otherUserId"),function(err,res){
if(err){
console.log("callback failed");
return;
}
Session.set("chatId", res._id);
var arrayLength = res.length;
for (var i = 0; i < arrayLength; i++) {
console.log("Message "+ i +"is " + res.message[i].text);
}
return res.messages;
});
}
}
});
我似乎无法弄清楚为什么#each 循环没有显示从帮助程序返回的任何消息文本?消息数组中的文本也不会打印到控制台。会话变量“chatId”确实被设置了。所以我的方法似乎正在工作并在“res”中返回整个对象。有什么指点吗?
【问题讨论】:
-
方法是服务器端还是客户端?可以贴一下方法代码吗?