2016-02-26 32 views
2

我想告訴用戶何時有未決的請求正在進行。EmberJS,如何監控未決的AJAX請求

主要想法是當有一些待處理的請求時顯示一個微調,但也有一個不錯的想法有總數的待處理的請求,以便我可以得到更準確的信息給用戶。

在Ember有沒有我能找到這些信息的地方?,我正在檢查模型,但是這讓我去了a nightmare。我也沒有在DS.Store中找到任何東西。

回答

0

正常情況下,Ajax請求包裝在Promise中。

對於路由實例:

this.store.findAll('myModel') 

這將返回一個承諾,你可以顯示一個微調,而承諾的心不是解決。 因爲這是一個經常需要的行爲,路由將轉換爲加載路由並呈現加載模板,而模型掛鉤的承諾仍在解決。

https://guides.emberjs.com/v1.10.0/routing/loading-and-error-substates/

餘燼檢查員使用邏輯來檢查承諾。

https://github.com/emberjs/ember-inspector

也許你能得到一些相關信息如何得到全部掛起的承諾。

+0

即使這看起來像一個很好的解決方法,據我所知,_promise_實際上並不是一個掛起的請求。我的模型樹可以充滿承諾,但我不會等待任何人加載,甚至大多數人永遠不會加載,因爲我永遠不會需要它們。向用戶通知未決_promises_的數量對她來說並不真實。 – fguillen