【发布时间】:2021-03-31 10:08:18
【问题描述】:
我正在使用react-bootstrap,我想复制这个结构:
<div class="row">
<div class="col-lg-3"></div>
<div class="col-lg-3"></div>
<div class="col-lg-6"></div>
</div>
<div class="row">
<div class="col-lg-6"></div>
<div class="col-lg-3"></div>
<div class="col-lg-3"></div>
</div>
我有一个必须在上面的列中显示的文章列表,如果您仔细观察,您会发现每一行都以不同的列开头,第一列以 3 开头,第二列以 6 开头,依此类推...
所以我写了:
<Container>
{articles.map((art, i) =>
(i + 1) % 3 === 0 ? (
<Row>
{" "}
<></>
<BlogItem index={i} colNum={3} art={art} />{" "}
</Row>
) : (
<></>
)
)}
</Container>
但这会产生不同的结构:
我做错了什么?
博客项目
const BlogItem = ({ index, colNum, art }) => {
const intl = useIntl()
return (
<div
className={(index + 1) % colNum === 0 ? "col-lg-6" : "col-lg-3"}
key={index}
>
<Link to={`/blog/${art.slug}`}>
<Card className="card-background">
<div
className="full-background"
style={{
backgroundImage: `url(${process.env.API_URL}${art.featured_image.url})`,
}}
></div>
<Card.Body>
<div className="content-bottom">
<div className="card-category">
{Localization(art.category.name, intl.locale)}
</div>
<Card.Title>{Localization(art.name, intl.locale)}</Card.Title>
</div>
</Card.Body>
</Card>
</Link>
</div>
)
}
【问题讨论】:
-
没有更多的代码是不可能知道的。 BlogItem 中有什么?文章是什么样的?
-
@DavidFrederick 检查更新。 BlogItem 只是显示文章结构..
标签: reactjs jsx react-bootstrap