2012-11-18 41 views
0

我有一個一次加載50個章節的應用程序。在查看章節的同時,我希望應用程序在加載新章節時播放聲音。這是我認爲這是應該做流星在初始數據加載和後續添加之間不同

Chapters.find().observe({ 
    added: function (user) { 
    playSound() 
    } 
}); 

但是這個修建垃圾初始加載的聲音,不只是後續的新的篇章。我如何才能讓它在新的章節中發聲?

編輯:尋找一個流星的答案,而不是setTimeout什麼的。雖然我必須這樣做。

回答

1

您可以在添加observe回調之前等待第一次完成章節的加載。

Meteor.subscribe("chapters", someParam, function(){ 
    Chapters.find().observe({ 
     added: function (user) { 
     playSound() 
     } 
    }); 
}); 

當然,你應該添加觀察者只有一次,而不是每次認購回調火災的時間。

+0

不要認爲這有效。回調在章節添加之前觸發。所以聲音仍然在播放。 – Harry

+1

這個答案將與此結合使用:https://github.com/oortcloud/unofficial-meteor-faq#why-does-observe-fire-a-bunch-of-added-events-for-existing-documents –

+0

@TomColeman謝謝 – Harry