动态添加和删除商店石斑鱼
Posted
技术标签:
【中文标题】动态添加和删除商店石斑鱼【英文标题】:Dynamically add and remove store grouper 【发布时间】:2014-01-09 07:56:02 【问题描述】:我正在使用商店在列表中显示一些数据。商店在一个屏幕中有一个石斑鱼,而在另一个屏幕上没有石斑鱼。我可以动态添加和删除一个石斑鱼吗? 感谢大家的支持。
这是代码:
Ext.define('MyApp.store.mystore',
extend: 'Ext.data.Store',
requires: ['Ext.data.proxy.LocalStorage'],
config:
identifier:
type: 'uuid',
,
fields: [
name: 'Fname', type: 'string',
name: 'Lname', type: 'string'
],
remoteSort: true,
/* grouper:
groupFn: function(record)
if(localStorage.getItem('mainCategory')=='CONSOLIDATE REPORT')
return record.get('mainCategory');
else
return record.get('category_name');
,*/
// groupField: ['Fname'],
proxy:
type: 'localstorage',
id: 'myyystore'
);
我的列表现在没有 grouper 属性。
我的要求是在一个屏幕上显示带有 grouper (Fname) 的列表,而在另一个屏幕上显示不带 grouper 的列表。
【问题讨论】:
【参考方案1】:您可以拥有两个不同的 Ext.List 并控制 grouped 配置。
或者你可以在实例化的时候直接传递:
var list = Ext.create('Myapp.view.MyList');
list.setGrouper(true);
或
myMainNavigation().push(
xtype: 'my-list',
grouped: true
);
希望对你有帮助-
【讨论】:
感谢您的回复。但是店里现在没有grouper了,能不能动态设置store grouper,因为我需要一屏的grouped store 请记住,列表和商店都有其分组配置。因此,您可以将商店分组,如果您在 LIST 中设置 grouped: false,它将不会显示为已分组。【参考方案2】:在您添加列表的视图中,您要对其进行分组和 在视图的初始化方法里面添加:
var store = this.down('.list').getStore();
store.sort(
groupFn: function(record)
var isReport = (localStorage.['mainCategory'] === 'CONSOLIDATE REPORT');
return record.get(isReport ? 'mainCategory' : 'category_name');
);
【讨论】:
以上是关于动态添加和删除商店石斑鱼的主要内容,如果未能解决你的问题,请参考以下文章