본문 바로가기
JS

230106 JS AJAX 서버 -yts.mx/api에서 받아오기

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>

        .list{
            display: flex;
            flex-wrap: wrap;
            justify-content: center;
        }

        .movie{
            padding: 20px;
            flex-basis: 100px;
            
        }


    </style>
</head>

<body>


    <div class="list">
        <!--
        <div class="movie">
            <img src="#" class="img">
            <p class="title">title</p>
        </div>
        -->
    </div>

    <script>

        fetch("https://yts.mx/api/v2/list_movies.json")
            .then(function (response) {
                return response.json();
            }).then(function (data) {
                var arr = data.data.movies;


                var str = ''; //화면을 그릴 문자열

                for (var i = 0; i < arr.length; i++) {
                    var img = arr[i].medium_cover_image;
                    var title = arr[i].title;


                    str+='<div class="movie">';
                    str+='<img src="'+img+'" class="img">';
                    str+='<p class="title">'+title+'</p>';
                    str+='</div>';
                }

                document.querySelector(".list").innerHTML=str;

            })

    </script>
</body>

</html>

매번 생성하는건 비효율적. innerHTML으로 해결