Ajax
Ajax를 활용한 클라이언트 서버 간 동작
사전준비
$ python manage.py loaddata users.json articles.json
// accounts/profile.html
<script src="https://cdn.jsdelivr.net/npm/axios/dist/axios.min.js"></script>
action과 method 속성은 삭제(요청은 axios 로 대체되기 때문) |
---|
url에 작성할 user pk 가져오기(HTML => JavaScript) |
---|
'data-*' 속성
- 사용자 지정 데이터 특성을 만들어 임의의 데이터를 HTML 과 DOM 사이에서 교환 할 수 있는 방법
팔로우 버튼을 토글하기 위해서는 현재 상태가 팔로우인지 언팔로우인지 상태 확인 필요
팔로우 상태 여부를 JavaScript에게 전달할 데이터 작성 |
---|
응답은 더이상 HTML 문서가 아닌 JSON 데이터로 응답 |
응답 데이터 is_followed 에 따라 팔로우 버튼을 토글하기 |
---|
- Ajax 적용은 팔로우와 모두 동일
- but, 팔로우와 달리 좋아요 버튼이
한 페이지에 여러 개
가 존재함
- forEach()
- querySelectorAll()