javascript - 如何在 JavaScript 中将 API 数据插入 HTML?
问题描述
我正在尝试使用 JavaScript 将 API 数据插入 html。我已经声明了一个空的 itemsArray,执行了一个从 API 获取数据并将该数据推送到 itemsArray 的函数。
现在我想映射 itemsArray,返回带有数据的 div 元素并使用 innerHTML 将其插入 HTML,但我的 itemsArray 是空的。有谁知道为什么会这样?
这是我的代码:
let itemsArray = [];
const fetchData = () => {
fetch('http://localhost:3000/items')
.then(response => {
if (!response.ok) {
throw Error(response.status)
}
return response.json();
})
.then(data => {
data.items.map(item => {
itemsArray.push(item);
})
})
.catch(error => console.log(error))
}
fetchItems();
const itemsList = document.querySelector('#items-list');
let item = itemsArray.map(item => {
return `
<div class="price">
${item.price}
</div>
`;
}).join('');
itemsList.innerHTML = item;
解决方案
推荐阅读
- angular - Typescript iIntellisense 在 Angular 8.0 的 Visual Studio Code 中不起作用?
- java - “发生了错误。查看日志文件..” 在 Ubuntu 18.04.4 LTS 上安装 eclipse 的问题
- c# - 如何更改 ListView 中部分文本的颜色?
- python - Python - 如何将值添加到第一列并附加
- webpack - 由于 ES6 的扩展语法,Webpack 和 Babel 没有在 node_modules 中转换破坏 IE 11 和 Edge 的依赖项
- javascript - php标头更改后Javascript动画不起作用
- python - 如何将子进程中的密码传递给 MySQL
- c++ - 如何提升 cppcheck 中的特定样式错误
- excel - 根据另一列上的 IF 语句在 Msgbox 中显示单元格值 - Excel VBA
- reactjs - 如何通过 axios 在 Reactjs 中使用多个参数发出 post 请求