API를 호출하고 데이터를 가공해 브라우저에 나타내본다.
html은 저번에 만들었던 것을 사용한다.
let rows = data['movies']
$('#cards').empty()
rows.forEach((a) => {
let comment = a['comment']
let desc = a['desc']
let image = a['image']
let star = a['star']
let title = a['title']
let temp_html = `<div class="col">
<div class="card h-100">
<img src="${image}"
class="card-img-top" alt="...">
<div class="card-body">
<h5 class="card-title">${title}</h5>
<p class="card-text">${desc}</p>
<p>⭐⭐⭐</p>
<p class="mycomment">${comment}</p>
</div>
</div>
</div>`
$('#cards').append(temp_html);
})
})
들어온 값들을 가지고 html이 잘 생성되는 걸 확인할 수 있다.
여기서 별점의 경우 API에서는 숫자로 들어오는데 이걸 가지고 별을 그려야 하는데 이 동작을 자바스크립트 문법을 사용해서 만들 수 있다.
let rows = data['movies']
$('#cards').empty()
rows.forEach((a) => {
let comment = a['comment']
let desc = a['desc']
let image = a['image']
let star = a['star']
let title = a['title']
let star_image = '⭐'.repeat(star)
let temp_html = `<div class="col">
<div class="card h-100">
<img src="${image}"
class="card-img-top" alt="...">
<div class="card-body">
<h5 class="card-title">${title}</h5>
<p class="card-text">${desc}</p>
<p>${star_image}</p>
<p class="mycomment">${comment}</p>
</div>
</div>
</div>`
$('#cards').append(temp_html);
})
})
별로 사용할 값을 .repeat(횟수)를 통해서 해당 별점만큼 별을 그려낼 수 있다.
이 값을 별점 자리에 넣어주기만 하면된다.
이제 별점을 반영해서 별이 그려지는 것까지 완성됐다.
'스파르타 > Web' 카테고리의 다른 글
[Web] 파이썬 기본문법 - ( week 3 ) (0) | 2023.04.19 |
---|---|
[Web] 파이썬 준비 - ( week 3 ) (0) | 2023.04.19 |
[Web] 과제) 서울 날씨 API 적용시키기 - ( week 2 ) (0) | 2023.04.19 |
[Web] fetch 연습 - 따릉이API ( week 2 ) (0) | 2023.04.19 |
[Web] fetch 연습 - 미세먼지API ( week 2 ) (0) | 2023.04.19 |