我是流星的新人,我試圖弄清楚如何在集合變化後運行函數。流星鐵路由器在集合變化時運行函數
我有一個訂閱了waitOn集合的路由(鐵路由器)。這只是等待subscrition準備就緒之前,這是我想要的。
waitOn: function() {
return Meteor.subscribe('collection', this.params._id);
},
集合的任何更改都將在所有客戶端上更新並自動呈現。
一旦集合發生變化,我將如何運行一個函數?
我是流星的新人,我試圖弄清楚如何在集合變化後運行函數。流星鐵路由器在集合變化時運行函數
我有一個訂閱了waitOn集合的路由(鐵路由器)。這只是等待subscrition準備就緒之前,這是我想要的。
waitOn: function() {
return Meteor.subscribe('collection', this.params._id);
},
集合的任何更改都將在所有客戶端上更新並自動呈現。
一旦集合發生變化,我將如何運行一個函數?
如果您使用data
幫助程序返回數據,則可以使用onData
鉤子。例如,這是什麼路線可能看起來像
this.route('routename',
path : '/abc',
waitOn: function() {
return Meteor.subscribe('collection', this.params._id);
},
data: function() {
return Collection.findOne({_id: this.params.id});
}
onData: function() {
//Do something when the data found by the above changes
}
});
感謝您的答覆,但我似乎無法找到鐵路由器文檔上的onData選項掛鉤。我使用的數據幫手工作正常,但我仍然不知道如何運行一個函數在更新後的dom –
@AndreEscudero看看這裏:https://github.com/EventedMind/iron-router#custom -actions-and-hooks – Akshat
好的謝謝我看看它並試用它 –
您可以調用[觀察變化](http://docs.meteor.com/#observe_changes)或[觀察](http://docs.meteor.com /#觀察),具體取決於每次更改是否需要整個文檔。通常,助手用於更改頁面的內容,而不是直接調用觀察。我建議更詳細地解釋你想完成什麼。 –
好吧我已經嘗試過使用Meteor.Defer進行更改,它可以正常工作。我也嘗試在第一個答案中建議的鐵路由器上使用onData選項。他們都很好。但是我應該使用哪一個?哪一個最好? –