0

我有以下商店:

Ext.define('Sencha.store.AdultMenuStore', {
extend: 'Ext.data.Store',

config: {
    onItemDisclosure: true,
    model:'Sencha.model.MenuPoint',
    data: [
        {
            id:   'addChild',
            name: 'Add child',
            icon_url: 'http://kidsparent.no/images/adultMenu/bkids-home-plussign.png',
            xtype: 'addchildform'
        },{
            id:   'share',
            name: 'Share',
            icon_url: 'http://kidsparent.no/images/adultMenu/bkids-home-shareicon.png',
            xtype: 'childmenu'
        },{
            id:   'myProfile',
            name: 'My Profile',
            icon_url: 'http://kidsparent.no/images/adultMenu/bkids-home-profile.png',
            xtype: 'childmenu'
        },{
            id:   'help',
            name: 'Help',
            icon_url: 'http://kidsparent.no/images/adultMenu/bkids-home-question.png',
            xtype: 'childmenu'
        }]
}
});

它使用以下模型:

Ext.define('Sencha.model.MenuPoint', {
extend: 'Ext.data.Model',

config: {
    fields: [
        {name: 'id', type: 'string'},
        {name: 'name', type: 'string'},
        {name: 'icon_url', type: 'string'},
        {name: 'xtype', type: 'string'}
    ]
}
});

我在代码中的某些地方动态添加菜单点,如下所示:

 var child = children[i];
 var menuPoint = Ext.create('Sencha.model.MenuPoint', {id: child.childId, name: child.firstName, icon_url: 'aLink', xtype: 'childmenu'});
 store.add(menuPoint);

有时我需要清除商店,删除我动态添加的菜单点,只使用我在商店中硬编码的菜单点。我看到了在商店中删除和添加的方法,但我不知道如何重置商店并用我在那里定义的静态数据重新填充它。

4

1 回答 1

1

按照我在你上一个问题上的回答做,你不尊重:)

var data = [
        {
            id:   'addChild',
            name: 'Add child',
            icon_url: 'http://kidsparent.no/images/adultMenu/bkids-home-plussign.png',
            xtype: 'addchildform'
        },{
            id:   'share',
            name: 'Share',
            icon_url: 'http://kidsparent.no/images/adultMenu/bkids-home-shareicon.png',
            xtype: 'childmenu'
        },{
            id:   'myProfile',
            name: 'My Profile',
            icon_url: 'http://kidsparent.no/images/adultMenu/bkids-home-profile.png',
            xtype: 'childmenu'
        },{
            id:   'help',
            name: 'Help',
            icon_url: 'http://kidsparent.no/images/adultMenu/bkids-home-question.png',
            xtype: 'childmenu'
        }]

store.load(function (store) {
    store.add(data)// data is an array with you local data
})

store.load() 函数清理 prev 数据

干杯,奥列格

于 2012-07-30T09:13:08.107 回答