javascript - JSON 数据未通过 innerHTML 显示
问题描述
我正在尝试使用 vanilla Javascript 从我的 JSON 文件中获取数据并将其插入 HTML。但是我的代码一直显示变量名称而不是数据。
displayProducts(products){
let result = "";
products.forEach(product => {
result +="<article class='product'><div class='img-container'><img src=${product.image} alt='oops' class='product-img'><button class='bag-btn' data-id=${product.id}><img src='./images/poopbag.png'>Add to bag</button></div><h3>${product.title}</h3><h4>$${product.price}</h4></article>";
});
productsDOM.innerHTML=result;
}
显示的是 ${product.image} 、 ${product.id} 和 ${product.title}。不是实际数据。当我将 console.log(product.image)、console.log(product.id) 和 console.log(product.title) 放在同一个函数中时,它会显示我想要的数据。
解决方案
字符串插值要求您使用反引号`
而不是单引号'
或双引号"
。
`<article class='product'><div class='img-container'><img src=${product.image} alt='oops' class='product-img'><button class='bag-btn' data-id=${product.id}><img src='./images/poopbag.png'>Add to bag</button></div><h3>${product.title}</h3><h4>$${product.price}</h4></article>`
推荐阅读
- javascript - 在 d3 条形图中自定义网格线
- python - ModuleNotFoundError:没有名为“projeler_ile_python”的模块
- javascript - 如果我从服务器请求数据,“ComponentDidMount”钩子会触发内存泄漏
- python-3.x - 从 python 生成 Faker 数据并将其加载到 BigQuery 嵌套表中
- c - 编码/解码程序的逻辑错误 (C)
- javascript - 克隆和换行时如何防止单词溢出?
- javascript - 以角度 8 加载子组件时更改父组件高度样式
- python - 运行进程如何在python中动态重新加载新的lib文件代码?
- python - 如何计算神经网络模型中的准确率、召回率和 F1 分数?
- r - 使用 R 提取单个国家/地区的 WORLDCLIM 数据