javascript - 如何遍历 javascript 中的内容数据并在引导网格列中显示?
问题描述
我正在使用 Contentful CMS 来发布一些数据并在 html 页面中检索它。我使用 JavaScript 在引导网格列中显示这些,但它没有正确显示数据。
这是我的代码:
<div class="row justify-content-center">
<div id="content"></div>
</div>
var client = contentful.createClient({
space: '#######',
accessToken: '#######'
})
var container = document.querySelector('#content');
client.getEntries()
.then(function(entries) {
container.innerHTML = renderProducts(entries.items)
})
function renderProducts(products) {
products.map(function(product) {
console.log(product.fields)
return '<div class="col-lg-4 col-md-6">' +
'<a href="service-details.html" class="single-feature wow fadeInUp">' +
'<img src="assets/images/icon/064-vector.png" alt="">' +
'<div class="content">' +
'<h4 class="title">' +
'<p>cool</p>' +
'</h4>'+
'</div>' +
'</a>' +
'</div>'
})
}
它在控制台中正确显示数据,但 HTML 没有按照我想要的方式呈现。
解决方案
嘿嘿。我没有测试我可以看到两个潜在的问题。renderProducts
不返回任何东西。您可以尝试更改它以返回您的 mapped products
。然后innerHTML
需要一个字符串值,这意味着您必须将映射数组连接在一起。
function renderProducts(products) {
//add a return here
return products.map(function(product) {
console.log(product.fields)
return '<div class="col-lg-4 col-md-6">' +
'<a href="service-details.html" class="single-feature wow fadeInUp">' +
'<img src="assets/images/icon/064-vector.png" alt="">' +
'<div class="content">' +
'<h4 class="title">' +
'<p>cool</p>' +
'</h4>'+
'</div>' +
'</a>' +
'</div>'
}).join('');
// join the array of strings together to one long string
}
推荐阅读
- ruby-on-rails - Rails - Heroku 部署问题
- r - 向 ChartSeries Quantmod 添加自定义指标
- java - CSF - 连接被拒绝
- xml - Python Crawler Xpath 获取
标签内容 - reactjs - PWA 应用程序中的 OT.Publisher.onStreamAvailableError OT_MEDIA_ERR_ABORTED
- c++ - 将子线程同步到由父线程管理的原子时间
- java - 从包含键的 LinkedHashMap 中删除特定值
和价值 LinkedList - linq - 使用 GroupBy 并根据条件显示不同的总和 - LINQ Lambda 表达式
- java - 为什么变量 drawable 和 getDrawable(R.drawable.ic_launcher_background) 分别引用不同的对象?
- python - SpreadsheetNotFound:如何授权 gspread 电子邮件帐户