0

我有一个通过 ajax 代理加载数据的商店。我想做的是在商店加载之前检查数据(如属性的值)。

我已经尝试使用商店的“加载前”事件来做到这一点,但是当我尝试从那里获取记录时,operation.getRecords();它给了我一个空数组..

我知道 Sencha Touch 中有一些验证系统,但它似乎不包括来自服务器的数据

有人对此有解决方案吗?

更新

好的,尽管临时存储是一个解决方案,但我找到了另一个解决方案,它包括在存储加载后检查,然后从中删除脏记录。

此外,在 Sencha 论坛上,有人告诉我“扩展阅读器(json 或 xml...),然后验证 getResponseData(解码对 JavaScript 的响应的方法)中的数据。”

所以我在我的商店里试过这个

reader: {
  rootProperty: 'data',
  getResponseData: function(response){
    console.log(response);
    return response;
  }
}

但这并没有改变任何东西,知道为什么吗?

谢谢

4

1 回答 1

1

没有干净的方法可以做到这一点。

beforeload在发出实际请求之前调用,所以它对你没有用。

我能想到的最干净的方法是监听load事件(在临时存储中),然后在那里验证您的数据。如果正确,则将存储数据移动到可见存储中。

于 2012-04-19T20:07:59.013 回答