gpt4 book ai didi

javascript - Dojo JsonRestStore 的数组不在 JSON 响应的根级别

转载 作者:行者123 更新时间:2023-12-02 16:37:37 25 4
gpt4 key购买 nike

有没有办法配置 JsonRestStore 来使用现有的 Web 服务,该服务返回一个位于 JSON 响应根级别的对象数组?

我的 JSON 响应目前与此类似:

{
message: "",
success: true,
data: [
{ name: "Bugs Bunny", id: 1 },
{ name: "Daffy Duck", id: 2 }
],
total: 2
}

我需要告诉 JsonRestStore 它会找到“data”下的行,但通过查看 documentation 我看不到执行此操作的方法。 。架构似乎是一种可能性,但我无法通过文档(或我在 Google 中找到的内容)理解它。

我的 Web 服务以 Ext JS 中存储所期望的格式返回数据,但我现在无法重构多年的 Web 服务(通过 HTTP header 而不是查询字符串值处理分页可能也很有趣,但是这是改天的问题)。

谢谢。

最佳答案

虽然 API 文档中几乎没有提及,但在 dojox/data/JsonRestStore 中有一个名为 _processResults 的内部方法,为此目的,可以轻松重写该方法。它接收服务返回的数据和请求中的原始 Deferred,并预计返回一个包含 itemstotalCount 的对象。

根据上面的数据,类似这样的事情应该有效:

var CustomRestStore = declare(JsonRestStore, {
_processResults: function (results) {
return {
items: results.data,
totalCount: results.total
};
}
});

关于javascript - Dojo JsonRestStore 的数组不在 JSON 响应的根级别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27789533/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com