【发布时间】:2023-03-31 23:36:01
【问题描述】:
我有一个使用 extjs 6.2 构建的应用程序。我想使用具有多个网格和图表的商店的单个实例,因为需要在不同的地方显示相同的数据。如果我创建商店的新实例,我会生成新的请求来获取数据。我怎么能在多个地方使用单个实例。
谢谢, 马吉德
【问题讨论】:
-
在应用对象上使用stores配置。
-
在子面板中访问应用商店的任何特定示例?
标签: extjs
我有一个使用 extjs 6.2 构建的应用程序。我想使用具有多个网格和图表的商店的单个实例,因为需要在不同的地方显示相同的数据。如果我创建商店的新实例,我会生成新的请求来获取数据。我怎么能在多个地方使用单个实例。
谢谢, 马吉德
【问题讨论】:
标签: extjs
您可以在主视图组件的view model 中声明您的商店:
stores: {
mystore: {
model: 'mymodel',
autoLoad: true
}
}
然后你可以通过binding访问它的后代组件:
xtype: 'grid',
bind: {
store: '{mystore}'
}
或者您可以在应用程序的任何位置(在组件需要它之前)创建商店,并为其分配storeId。
这家商店的唯一标识符。如果存在,此商店将是 向 Ext.data.StoreManager 注册,使其易于重用 其他地方。
Ext.create('App.store.MyStore', {storeId: 'myStore'});
然后使用Ext.getStore访问它:
Ext.getStore('myStore')
或者甚至只为组件的存储配置指定storeId,如果他们接受这个(网格可以):
xtype: 'grid',
store: 'myStore'
【讨论】: