将REST API调用以进行循环,并使用Angular JS处理可见区域的优先级



有一个数组,该数组基于此水果ID的400个数据ID,我将运行RET RETS API调用以获取每个水果的相关信息。在列表中,我能够实现,但ID的数量大量未能达到API。因此,如果完成一个API呼叫,我计划在5乘5点击中5 by 5,那么我们应该在循环中再添加一个API呼叫。我不能如何实现这一目标吗?如果用户向下滚动到某些区域,我还需要对可见区域进行API的要求,并希望为此提供高度的优先级。this.follow是示例代码:

function getidList() {
              var dList = SessionService.fList();
           //dList have the fruit ids once its done
            if (dList.length > 0) {
                for (var i = 0; i<=5; i++) {
                                       var data = dList[i];
//here i have call the service for api call//
         fruitService.getFruitDetails(data, sessionID, getresponse);

                }
            }
//following code is service
function getFruitDetails(){
                var Data = { SessionID: sessionId, fID: fruit}
                http.callEx('GetallListData', Data).then(function (response) {
                    console.info("api", response);
                    dataobj[response.fruit.ID] = getfListData(response.fruitData);
                    fruitListModel.push(dataobj);
                    return getresponse(fruitListModel);
                });
}

因此,这里的问题是在悬挂页面上,我加载页面。我不知道如何处理API调用,一旦使用了第5个和下一个5和下一个5,请选择可见区域的优先级。建议和一些想法

在使用使用方面,您可以尝试加载数据5 x 5,如下所示:

function getidList() {
var dList = SessionService.fList();
var dlength = dList.length;
if (dlength > 0) {
    var data = [];
    for (var i = 0; i < dlength; i++) {
        data.push(dList[i]);
        if(i%5 === 0 || i === dlength - 1) {
            fruitService.getFruitDetails(data, sessionID, getresponse); // not your function signature though
            data = [];
        }
    }
}

}

或者,当视图中可见元素的一部分时,您可以一一加载数据。

希望这有助于一点

最新更新