我有一个绑定到ItemFileReadStore的数据网格。在我的例子中,我有一个"优先级"列,用于根据用户的选择上下移动行。优先级顺序存储在DB表中。目前,我已经通过在每次上下箭头点击时发送AJAX请求,并在JSON对象中获取更新的数据,并在数据网格中重新加载整个数据来实现这一点。
但我认为这是太多的数据携带。我想要的是:在更新DB中的数据后,如果更新成功,我只会向调用JS方法传递一个成功标志,然后我会在客户端的存储中本地更新数据。这将使响应更快,并减少网络负载。
我知道它可以在ExtJS中完成(http://docs.sencha.com/extjs/3.4.0/#/api/Ext.data.Record集),但不确定如何进入Dojo。我查阅了文件,但找不到任何有用的东西。
有人能引导我思考这个吗?
如果您定义了背后的资源,答案会容易得多。我有一个确切的问题,并与JsonRest和dgrid一起解决了它。
从你的问题中,我已经理解了你正在向DB发送AJAX请求,这意味着你(希望)在两者之间有一个小的RESTneneneba API。
如果是这样的话,我建议从ItemFileReadStore切换到dojo/store/JsonRest,这实际上不会损害您现有的数据操作架构,甚至会大大改进它
dojo/store/JsonRest将做您想要做的事情,甚至更多。商店里的任何小变动都会像你提到的那样被勇敢地处理,而不会对整个数据进行昂贵的更新。
如果它不能解决你的问题,很抱歉。