javascript - 循环内的 HTML 未在 React 中呈现
问题描述
我正在尝试使用 Gatsby 在 DOM 中列出查询的帖子。下面的小片段应该足够了,因为 Graphql 查询正在正确获取数据。此代码段位于组件内,该组件也正确呈现。我是 Gatsby 和 React 的新手,我希望我错过了一些非常基本的东西。
<div className="container">
Hello! // Renders
{newsItems.map(newsItem => {
console.log(newsItem.context.id); // Logs each news item id to console correctly
Hello! // Does not render
<p>{newsItem.context.id}</p> // Does not render
})}
</div>
解决方案
您已经使用了花括号,所以这就是您从 map 函数返回组件的方式。
{newsItems.map(newsItem => {
console.log(newsItem.context.id); // Logs each news item id to console correctly
return (
<>
Hello!
<p>{newsItem.context.id}</p>
</>
)
})}
没有试过这个,但它应该工作。这也仅在newsItems
包含值时才有效。使用React Fragments <>...</>
是因为 return 必须只返回单个组件。您也可以使用<div>...</div>
而不是片段。
尝试这个。
推荐阅读
- jasper-reports - jasper 报告中具有当前日期的动态文件名
- php - 当我点击超链接时,我在 Laravel 中找不到页面
- reactjs - 如何使用左箭头和右箭头使用自定义箭头 - React Native 幻灯片
- json - 如何在json中转义双引号
- docker - 以 root 和非 root 身份运行 docker
- xwiki - 如何在 XWiki 中使用 linux 上目录的路径?
- mysql - Stop MariaDB from locking proces
- python - 未找到带有参数 '('',)' 的 'edit_post' 的反向操作。尝试了 1 种模式:['edit_post/(?P
\\d+)/$'] - node.js - mongoose $or within $or in find query
- git - fatal: unable to access 'https://github.com/MyName/MyRepo.git/': The requested URL returned error: 403