Javascript 更新sencha touch 2中的存储记录值

Javascript 更新sencha touch 2中的存储记录值,javascript,sencha-touch-2,Javascript,Sencha Touch 2,我有一个商店,有5张唱片。 相应的模型有6个字段:序号、pageNum、顶部、左侧、底部、右侧。 当我尝试更新特定记录的4个字段(上、左、下、右)时,假设我要更新第4条记录中的字段(上、左、下、右),并将记录设置为脏: markukRecord = markupStore.getAt(3) markupRecord.set('top',topVal); markupRecord.dirty = true; markukRecord = markupStore.getAt(3) mar

我有一个商店,有5张唱片。 相应的模型有6个字段:序号、pageNum、顶部、左侧、底部、右侧。 当我尝试更新特定记录的4个字段(上、左、下、右)时,假设我要更新第4条记录中的字段(上、左、下、右),并将记录设置为脏:

 markukRecord = markupStore.getAt(3)
 markupRecord.set('top',topVal);
 markupRecord.dirty = true;

 markukRecord = markupStore.getAt(3)
 markupRecord.set('left',leftVal);
 markupRecord.dirty = true;

 markukRecord = markupStore.getAt(3)
 markupRecord.set('bottom',botVal);
 markupRecord.dirty = true;

 markukRecord = markupStore.getAt(3)
 markupRecord.set('right',rightVal);
 markupRecord.dirty = true;
注意:代码不重复,它在循环中运行。 这里的问题是,“left”和“right”值被更新到第5条记录,而不是第4条记录(index=3)

我有什么遗漏吗?
提前感谢。

如果只迭代一个项目,则不会保存,这似乎很奇怪。。。所有项目的代码应相同

您应该检查一件事:在进行这些更改之后,您是否正在执行
markupStore.sync()

也许您应该向我们展示完整的代码,例如,`leftVal或rightVal在哪里定义?它们是如何定义的,等等