相关疑难解决方法(0)

如何从ExtJS数据存储中获取脏记录?

除了遍历商店中的记录并检查脏标志之外,还有更清洁的方法吗?

编辑

我正在使用ExtJS4,顺便说一句.

这是返回数据的片段.注意到有一个dirty: truemodified目标集(这实际上是旧的数据和所述data对象包含新数据)

data: Ext.Class.Class.newClass
    items: Array[3]
        0: Ext.Class.Class.newClass
            data: Object
                incidentCount: 14
                incidentKey: "5466BD05-E4DD-4C1F-9F73-61ABAC6D3753"
            dirty: true
            id: "Ext.data.Store.ImplicitModel-TEDetailIncidencesStore-ext-record-13"
            index: 0
            internalId: "ext-record-13"
            modified: Object
                incidentCount: 7
Run Code Online (Sandbox Code Playgroud)

请注意,该data块包含incidentCount14.这是NEW值,modified块包含OLD值7.

编辑2

我加载商店:

TimeEntryDetailsStore.load({
     params:{
        timeEntryKey:"myKey"
     }
});
Run Code Online (Sandbox Code Playgroud)

激活后,上面的商店成功加载了3行.然后,当我更改一个值时,脏标志被设置,你得到上面的数据块

谢谢

编辑3

这是我要使用的代码,除非有人有更好的方法.我不明白为什么getUpdatedRecords()返回一个空数组.但是哦,好吧.

for(c=0; c < TEDetailIncidencesStore.count(); c++ ) {
    if( TEDetailIncidencesStore.data.items[c]["dirty"] == true) {
        var dirtyRecord = TEDetailIncidencesStore.data.items[c];
        updateTEDetailIncidences(dirtyRecord);
    }
}
Run Code Online (Sandbox Code Playgroud)

extjs extjs4

7
推荐指数
2
解决办法
2万
查看次数

标签 统计

extjs ×1

extjs4 ×1