小编ind*_*rta的帖子

使用Fetch和分页的Javascript,是否递归?

您好,我是Java语言和API的新手。

但是我有一个练习,应该从中获取数据。

https://swapi.co/api/planets/

问题在于,它不会一次列出所有行星,因此URL仅显示前10个条目,而https://swapi.co/api/planets/?page=2显示下一个条目,依此类推。

这是我当前的代码,它可以正常工作,但是我不认为我应该这样做,所以我想知道您将如何解决这个问题。

https://codepen.io/indiehjaerta/pen/QQXVJX

var starWarsAPI = new StarWarsAPI();
starWarsAPI.Initialize();

function StarWarsAPI()
{
    this.planets = new Array();

    this.Initialize = function()
    {
        this.LoadPlanets("https://swapi.co/api/planets");
    }

    this.LoadPlanets = function(aURL)
    {

        fetch(aURL).then(
            function (response) 
            {
                if (response.status !== 200) 
                {
                    console.log('Looks like there was a problem. Status Code: ' + response.status);
                    return;
                }

                response.json().then(
                    data => this.LoadPlanetsRecursive(data)
                );
            }.bind(this)
        ).catch(function (err) 
        {
            console.log('Fetch Error :-S', err);
        });
    }

    
    this.LoadPlanetsRecursive = function(aData)
    {

        for (let planet of aData.results)
        {
            let newPlanet …
Run Code Online (Sandbox Code Playgroud)

javascript recursion pagination fetch

3
推荐指数
1
解决办法
2412
查看次数

标签 统计

fetch ×1

javascript ×1

pagination ×1

recursion ×1