动态添加和删除商店石斑鱼

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');
    
);

【讨论】:

以上是关于动态添加和删除商店石斑鱼的主要内容,如果未能解决你的问题,请参考以下文章

FragmentPagerAdapter动态添加fragment和删除fragment

Windows 应用商店应用程序 - 动态绑定

C#中DataTable动态添加行和删除行的问题?

element 动态添加删除标签

卸载应用时动态链接firebase没有打开应用商店

在TabLayout(材料设计)android中动态添加和删除标签