我創建了一個小提琴來說明我嘗試實現的內容。如何直接從服務器端過濾的商店獲取值
https://fiddle.sencha.com/#fiddle/1i8e
在撥弄,還有兩個網格和形式。
當選擇第一個網格的一行時,會過濾第二個網格(在服務器端,此代碼未在小提琴中實現)。
是這樣的:
storeGrid2.load({
params: {
'item': id_item
}
});
在按下,形式E的按鈕獲取從第二柵格存儲值(預先過濾)。
這效果很好。
但是,我不需要第二個網格作爲我的應用程序中的組件。
是否有任何方式獲得第二個網格商店值(沒有網格作爲組件),在被過濾後?我想當我選擇網格1的第一行,過濾grid2存儲(沒有網格作爲組件),獲取這個存儲值(這裏是他的問題),並添加字段形成。
編輯:
我知道我的情況不容易暴露。
假設,例如,一個餐廳的應用程序。
第一個網格顯示星期幾。第二個網格顯示當天可用的食物成分。窗體顯示菜單。
當用戶選擇值爲星期一的第一個網格行時,第二個網格會顯示土豆,蘋果和雞肉。表格根據這些食物成分顯示菜單:土豆湯,蘋果派和炸雞。
如果是餐廳客戶,當他選擇星期一(第一個網格) 只是菜單出現,而不是第二個網格(客戶不需要知道當天哪些食物配料可用,只是菜單)。
這可以通過隱藏網格來完成。
但是,我試圖實現的是,是否有可能直接獲取沒有(第二個)網格組件的數據存儲。
所有發生在ViewModel/Store層的事件都不存在視圖層(第二個網格)。
當我使用store.load()沒有實例化成分格我得到以下錯誤:遺漏的類型錯誤:無法讀取的不確定
你聽說過Ext.getStore的'讓您的商店的引用() '? – Alexander
是的。我也試過Ext.data.StoreManager.get('my storeId');我必須解決的第一個問題是如何在沒有網格的情況下加載商店。 storeGrid2.load({params:{'item':id_item}});顯然要運行需要網格組件。我的商店位於viewModel中。我想要直接從商店寬度中獲取de值grid – josei
好吧,基本上你想要的是根據你在第一個網格上選擇的值過濾第二個商店,而不需要第二個網格來表示這些數據,那麼正確嗎?只需使用鏈式商店來做到這一點 - http://docs.sencha.com/extjs/6.2.0/classic/Ext.data.ChainedStore.html –