验证来自服务器的数据

时间:2012-04-19 13:57:10

标签: sencha-touch extjs sencha-touch-2

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

我已经尝试使用商店的'before load'事件来做这件事,但不知何故,当我尝试从那里用operation.getRecords();获取记录时,它给了我一个空数组..

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

有人有解决方案吗?

更新

好的,即使临时存储是一个解决方案,我发现另一个包含在商店加载后检查,然后从中删除脏记录。

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

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

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

但它没有改变任何东西,任何想法为什么?

由于

1 个答案:

答案 0 :(得分:1)

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

beforeload在实际请求发出之前被调用,因此对您没用。

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