※本サイトで紹介している商品・サービス等の外部リンクには、アフィリエイト広告が含まれる場合があります。
コメント一覧を表示する
先日、コメント一覧のAPIを作成した
今回は、取得したAPIを使いAjaxでコメント一覧を表示できるようにする
article.jsを開く
document.addEventListener('DOMContentLoaded', () => {
const dataset = $('#article-show').data()
const articleId = dataset.articleId
axios.get(`/articles/${articleId}/comments`)
.then((response) => {
const comments = response.data
})
DOMContentLoaded
のすぐあとで- コメント一覧を取得
axios.get(/articles/${articleId}/comments)
する - 成功したら
then
、response.data
をcomments
に渡す
javascriptでコメント一覧を表示する
axios.get(`/articles/${articleId}/comments`)
.then((response) => {
const comments = response.data
comments.forEach((comment) => {
$('.comments-container').append(
`<div class="article_comment"><p>${comment.content}</p></div>`
)
})
})
- コメント一覧を取得する
axios.get(`/articles/${articleId}/comments`)
response.data
をcomments
に渡す
※ここからはコメント一覧の表示についてcomments
の中身をひとつずつ取り出すforEach
- 取り出した
comment
はfunction
に入れるができる comments-container
(views/articles/show.html.hamlに用意済)の中にcomment
をhtmlタグで追加append
する`<div class="article_comment"><p>${comment.content}</p></div>`
簡単なhtmlであれば、↑のようにjavascriptの中に書いてしまうこともある
#DAY7