這可能會濫用Ember,但我想爲商店中的物品數量創建計算屬性。商店中記錄數量的計算屬性?
我試圖原型,完全存在客戶端的UI。我正在使用本地存儲適配器的夾具數據。這樣,我可以開始使用罐裝數據,但我也可以添加數據,並在重新加載時保持數據。
由於我目前工作在數據層上,我已經建立了一個settings
路線,讓我一個UI重置各種型號。我想添加一個Handlebars表達式,如{{modelCount}}
,這樣我可以看到商店中有多少條記錄。這比使用Ember Data Chrome擴展程序更快,該擴展程序會重置爲每個頁面重新加載的路徑選項卡。
下面將告訴我的記錄一次人數,但是當記錄更改的數量並沒有改變:
modelCount: function() {
var self = this;
this.store.find("my_model").then(function(records) {
self.set("modelCount", records.get("length"));
});
}.property()
我得到這家店應該是代理在現實世界中的API,以及find
返回一個承諾,但這是關於我的知識的限制。我不知道如何告訴Ember我想知道有多少記錄,或者這是否是一個有效的問題。
是否有可能做到這一點在任意變量?我問,因爲我的設置路線是作爲一個用戶界面來「重啓」一些模型。那麼,其實我是想是一樣的東西'{{model1Count}}','{{model2Count}}',...(我承認,它也有可能,我試圖做一些事情非常不Emberlike。) – Ryan
作爲Ember 2.x,'ArrayControllers' [已棄用](https://emberjs.com/deprecations/v1.x/#toc_arraycontroller)。 Ember的基本觀測要求你實現自己的[數組類]的一個(https://emberjs.com/api/classes/Ember.Array.html),所以你的模板將更新當陣列更改的條目。 – efx