Ext.data.Store
的文档中,find方法的说明如下:
通过指定字段值,在该存储区中查找第一个匹配记录的索引。
我的问题是如何查找该存储区中所有匹配记录的索引?
Ext.data.Store
的文档中,find方法的说明如下:
通过指定字段值,在该存储区中查找第一个匹配记录的索引。
我的问题是如何查找该存储区中所有匹配记录的索引?
我认为最符合你需求的函数是queryBy()
,因为它返回匹配记录的数组。
你仍然可以使用each()
函数来检查模型是否符合条件,然后将它们添加到数组中。但是这个函数更适合遍历存储中的所有记录,而不仅仅是用于“过滤”数据。
Extjs的store有几个方法,可以通过特定字段值返回第一个匹配的记录。要获取所有过滤后的记录,您必须使用each函数,然后匹配或过滤所需的记录。
如果您正在使用ExtJS 3.x,假设您的数据存储由store
引用
Ext.pluck(store.filter('field', 'value'), 'id');
返回一个包含匹配记录索引的数组。
filter()
不再返回任何内容。此外,Ext.pluck
将在Ext.Array.pluck
下找到。另一点是在此之后对存储进行了过滤。 - sra