繁体   English   中英

在 for 循环中合并 $http.get JSON 数据

[英]Merge $http.get JSON data in for loop

我正在使用 REST 服务器来检索数据。 在 AngularJS UI 中,用户可以选择几个选项来创建要发送到 REST 服务器的查询。 问题是服务器只接受一个,所以如果用户想搜索多个实体,他们不能。 我正在想办法发送多个请求(请求的数量取决于实体数组的长度,它由用户在 UI 中设置)。 到目前为止,我能想到的就是通过实体数组的长度进行循环,并为每个循环发送一个请求 - 我的问题是如何加入这两组数据? 每次 for 循环完成时,数据都会被下一个发送的集合覆盖。 并且发送请求的次数完全取决于用户需要返回的实体数量。

如果您对每个结果项都有任何唯一标识符,那么您可以尝试以下算法。 希望它能解决问题。

var data = []; 
loop through options selected by user {
   request sent {
       on sucess() {
             loop though RESPONSE_DATA_ARRAY {
                 var id = RESPONSE_DATA_ARRAY_ITEM.uniuqe_key
                 if(data[id] === undefined){
                     data[id] = RESPONSE_DATA_ARRAY_ITEM; 
                     //Stored as Key Value pair, which will help to identify same object each time easily.
                 }
             }

       }
   }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM