javascript - 在 React 中循环数据时如何向网格系统添加断点
问题描述
我试图在循环数据时为 React 中的网格系统添加一个断点。不过,它的行为方式并不是我想要的。我想要 3 ,然后在继续使用相同的模式之前col-lg-3
添加一个断点。<div class="w-100"></div>
我认为通过附加断点 if 会相当容易index === 3
,但是由于我必须将其包装在另一个 div 中,因此会导致一些意想不到的结果。
const newVideoRow = category => {
return category.map((video, index) => {
if (index === 3) {
return (
<div>
<div className="video col-sm-12 col-md-6 col-lg-3" key={video.title}>
<Video
key={video.title}
videoTitle={video.title}
videoLink={video.video}
videoImage={video.image}
/>
</div>
<div className="w-100"/>
</div>
)
}
return (
<div className="video col-sm-12 col-md-6 col-lg-3" key={video.title}>
<Video
key={video.title}
videoTitle={video.title}
videoLink={video.video}
videoImage={video.image}
/>
</div>
)
});
};
这是意外结果的图片。测试 4 应该在下一行。
markdown 显示了div
thecol-lg-3
和<div class="w-100"></div>
. 这会导致问题吗?如果是这样,我将如何改变它?
解决方案
如果您使用的是 react 16,
最简单的解决方法是使用 Fragments https://reactjs.org/docs/fragments.html 。例如,不要忘记导入它import React, { Fragment } from 'react';
const newVideoRow = category => {
return category.map((video, index) => {
if (index === 3) {
return (
<Fragment>
<div className="video col-sm-12 col-md-6 col-lg-3" key={video.title}>
<Video
key={video.title}
videoTitle={video.title}
videoLink={video.video}
videoImage={video.image}
/>
</div>
<div className="w-100"/>
</Fragment>
)
}
return (
<div className="video col-sm-12 col-md-6 col-lg-3" key={video.title}>
<Video
key={video.title}
videoTitle={video.title}
videoLink={video.video}
videoImage={video.image}
/>
</div>
)
});
};
推荐阅读
- flutter - Flutter: Refresh parent widget on Navigation.pop
- excel - Type mismatch error in vba while search and update
- google-sheets - 如何计算谷歌表格中的特定符号
- c# - 更新功能不起作用,SQL Server 和 ASP.NET MVC 5
- c++ - 无法在 Bison 代码中打印正确的值
- sql - 带有教职员工姓名的主题中的最高分
- bash - 是否可以将带有引号和特殊字符的文件通过管道传输到 OpenSSL?
- javascript - JavaScript 类型强制如何以及为什么起作用?
- python - “加载 dynlib/dll 失败”在与 PyInstaller 绑定后执行“*.exe”文件时
- node.js - 使用 Node 静态部署时,角度路由不起作用