0
想象一個呈現HTML表格的組件。表中的數據來自遠程JSON。Ember afterRender組件/非異步AJAX
該組件的另一部分依賴於完全呈現的HTML表(使用JSON數據)。
在組件的init
事件中,我檢索JSON並設置組件將用於呈現表的數據。
我不能使用afterRender
鉤子來進一步處理表,因爲當觸發afterRender
時,表存在但沒有JSON數據。
我注意到組件外部的一個afterRender
鉤子工作(表格完全呈現),但是我通過運行屬於組件內部的代碼來破壞封裝。
我可能會同步獲得JSON,或者是承諾內的承諾?我將如何做後者?我的意思是在組件的init
掛鉤上,我如何創建一個只有在它內部的promise被返回時纔會返回的promise?
或者我該如何處理這種灰燼方式?
有道理,謝謝你教我的東西,我將需要:)不過,我想我只是發現這是一個更好的方法。如果我「觀察」HTML表所依賴的屬性,那麼在觀察者的表內完全呈現,所以我可以做我需要的東西!甜。 – Ivan
伊萬傾聽模型的狀態成爲加載是做的方式(DS.Model#isLoaded),請考慮回答你自己的問題。另請看這篇文章http://blog.trackets.com/2013/01/27/ember-data-in-depth.html。 –