我有一个用于支持列表的商店。当我点击一个列表项时,我会显示一个“详细信息”面板。详细信息面板上的按钮之一启动 POST 请求以启动服务器端操作。这会将服务器端的状态从“空闲”更改为“进行中”。要更新详细信息面板上的 UI,然后我通过调用 Model 类的 load() 来加载此实例的最新数据,例如
MyApp.model.Server.load(serverId,
success: function(record, operation) {
// code that updates the current view
}
});
但是,这似乎并没有更新底层 Store 中的实例。所以当我回到列表时,我点击的服务器有陈旧的数据(仍然说“空闲”)。
有没有办法可以获取更新的服务器实例并仅更新商店中的该记录?我不想为了更新一条记录的 UI 而重新加载我的整个商店。
我尝试更新商店中的实例,但无济于事:
Ext.getStore('Server').getById(serverId).data = record.data;
我在这里错过了什么吗?还是我真的必须重新加载整个商店才能获得一条记录的更新状态?