У меня есть следующее javascript
for (var i = 0; i < e.blog.length; i++) {
var id = e.blog[i].id;
var date = e.blog[i].date;
var title = e.blog[i].title;
var image = e.blog[i].image;
var excerpt = e.blog[i].excerpt;
var tags = e.blog[i].tags;
var html =
'img src="' +
image +
'" alt="' +
title +
'image"<h1>' +
title +
"</h1>" +
'<div class="post-details">' +
'<span class="post-date">' +
published +
'<h2 class="post-title">' +
title +
"</h2>" +
'<p class="post-excerpt">' +
excerpt +
"</p>" +
'<div class="post-categories">' +
'<span class="post-tag">' +
tags +
"</span>" +
"</div> </div>";
html = document.getElementById("data").innerHTML = html;
}
});
document.getElementById('data').innerHTML = html
Взятие содержимого из этого JSON ответа
{
... (rest of json file before these dots important bit below)
},
"blog": {
"post-1": {
"id": "1",
"date": "2020.08.01",
"title": "Post Title",
"excerpt": "Post excerpt goes here",
"tags": "Post Tag 1, Post Tag 2",
"body": "Blog body content goes in this field"
},
"post-2": {
"id": "1",
"date": "2020.08.01",
"title": "Post Title",
"excerpt": "Post excerpt goes here",
"tags": "Post Tag 1, Post Tag 2",
"body": "Blog body content goes in this field"
}
}
}
И он должен отображать HTML из javascript в div с идентификатором data
, показанным ниже
<div id='data'>
</div>
Однако он возвращает следующую ошибку: Unexpected identifier 'I'
Как мне go исправить это? не должно ли это работать из-за того, что я был указан в начале for l oop?
Создал массив из блога, однако все, что он делает, это возвращает следующую ошибку. Код ниже ошибки
Unhandled Promise Rejection: TypeError: undefined is not an object (evaluating 'e.blog[i].id')
JS
const arrBlog = Object.values(e.blog);
console.log(arrBlog);
for (var i = 0; i < arrBlog.length; i++) {
var id = arrBlog[i].id;
var date = arrBlog[i].date;
var title = arrBlog[i].title;
var image = arrBlog[i].image;
var excerpt = arrBlog[i].excerpt;
var tags = arrBlog[i].tags;
var html = `
<div class="post">
<img src="${image}" alt="${title} Image" />
<div class="post-details">
<span class="post-date">${date}</span>
<h2 class="post-title">${title}</h2>
<p class="post-excerpt">${excerpt}</p>
<div class="post-categories">
<span class="post-tag">${tags}</span>
</div>
</div>
</div>
`;
html = document.getElementById("data").innerHTML = html;