In meiner HTML-Datei arbeiten, ich habe eine #each Schleife wie folgt aus:Meteor {{}} #each Schleife nicht
{{#each messages}}
{{> chat_message}}
{{/each}}
In meiner Helfer Klasse habe ich eine Methode nenne Chat-Nachrichten von den Chats abrufen Sammlung:
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;
});
}
}
});
ich kann nicht scheinen, um herauszufinden, warum die #each Schleife keine der Nachricht zeigt Texte aus dem Helfer zurückgegeben? Der Text im Nachrichtenarray wird auch nicht in die Konsole gedruckt. Die Sitzungsvariable "chatId" wird gesetzt. Also scheint meine Methode zu funktionieren und das gesamte Objekt in "res" zurückzugeben. Irgendwelche Zeiger?
Ist die Methode Server oder Client-Seite? Können Sie den Methodencode einfügen? –