通过 id 从 extJs/ Sencha 中的存储中删除记录

Remove record by id from store in extJs/ Sencha

我想按 ID 删除记录。 例如。商店包含 RoleId、RoleName 字段。

store 中有很多记录,我有 RoleId 到 remove/delete store 中的记录。 亲爱的代码我已经尝试过但没有用..你能给我一些建议吗?

  roleId = Ext.getStore('userStore').first().data.roleId;
                    var roleStore = Ext.getStore('userStore').first().companies().first().roles();
                    roleStore.remove(roleStore.findRecord('roleId', roleId));

也尝试过...

  roleId = Ext.getStore('userStore').first().data.roleId;
                    var roleStore = Ext.getStore('userStore').first().companies().first().roles();
                    roleStore.removeAt(roleStore.find('roleId', roleId));

你可以直接试试这个,

roleId = Ext.getStore('userStore').first().data.roleId;
var roleStoreItems = Ext.getStore('userStore').first().companies().first().roles().data.items;
roleStoreItems.forEach( function(item,index){
if(item.data.roleId==roleId){
roleStoreItems.remove(index);
}
});