我有一種情況,在DS.RecordArray上的isLoaded更改爲true,但RecordArray的content,length屬性仍爲空,此時爲0,並且稍後纔會更改。Ember-Data:知道RecordArray何時完全填充
示例代碼(CoffeeScript的):
@set('followRequests', App.FollowRequests.find())
...
whenDataLoads: (->
console.log @get('followRequests.isLoaded')
console.log @get('followRequests.length')
@set('content', @get('followRequests').toArray())
).observes('followRequests.isLoaded')
第一個日誌聲明是真實的,而第二個是0和使用這種數據的模板是空的。當我看到實際的AJAX請求時,我發現請求確實返回了一組記錄。而RecordArray的長度和內容也發生變化一段時間後,如出現在瀏覽器控制檯做:
App.Router.myController.get('followRequests').get('length')
---> 12
但是這個代碼(如下)不填充內容的模板,但它運行12次......
whenDataLoads: (->
console.log @get('followRequests.isLoaded')
console.log @get('followRequests.length')
@set('content', @get('followRequests').toArray())
).observes('followRequests.length')
什麼,知道什麼時候該RecordArray完全填充了正確的方式...?
我相信這是燼數據中的錯誤,我打開[問題](https://github.com/emberjs/data/issues/652)的bug跟蹤系統這一點。很高興找到解決方法。 –
@AdrienCoquio,謝謝,很高興知道別人也面臨這個問題。將跟蹤此,我真的沒有看到任何可能的解決方法.. –