javascript - 在循环之间引入一个div来添加flex
问题描述
这是我目前拥有的,显示效果很好。
我最终得到 4 行和 4 列。
<div>
{(
<Table
data={{
body: Object.keys(conduitData).map((key) => {
const conduitArray = conduitData[key];
return conduitArray.map(category => ({
content:
<div>
<ConduitSelector
data={{title: category.name}}
/>
</div>
}));
}),
}}
/>
)}
</div>
但是 CSS 不会换行,内容会一直挤在同一行中。
如果连续有 3 个以上的项目,我希望它向下弯曲。
我希望能够将每一行包装到另一个 div 中,以便我可以引入 flex css 属性,如下所示:
管道数据是一个地图。
导管阵列是一个数组。
<div>
{(
<Table
data={{
body: Object.keys(conduitData).map((key) => {
const conduitArray = conduitData[key];
// (parent) I want to add this div to introduce css flex
return <div style={{display: 'flex'}}>
{conduitArray.map(category => ({
content:
// adding flex properties here too
<div style={{flex: '0 0 33.333333%'}}>
<ConduitSelector
data={{title: category.name,}}
/>
</div>,
}))}
</div>
}),
}}
/>
)}
</div>
但是当我运行它时,我最终会出现以下错误。
错误!row.map 不是函数
有没有办法克服这个错误?
解决方案
我不明白为什么你不能把样式放在你的桌子周围。
<div style="display: flex; flex-wrap: wrap;">
<conduit div style="flex-basis: 33.333333%">
</div>
</div>
编辑
也许环绕返回函数?
return <div>{ conduitArray.map(category => ({
content:
<div>
<ConduitSelector
data={{title: category.name}}
/>
</div>
})) }</div>;
推荐阅读
- reactjs - 如何在 getInitialProps Next.js 中使用上下文 API 使用者
- sql - 在 where 子句中的 Postgres 正则表达式
- laravel - Axios 在响应中返回 HTML 而不是数据
- laravel - 在 laravel 中排序
- tensorflow - Keras 需要很长时间才能拟合模型
- javascript - 不使用 node.js:未捕获的 TypeError:无法解析模块说明符“三”。相对引用必须以“/”、“./”或“../”开头
- python - 为什么python斐波那契序列循环比递归慢?
- php - PHP 内存限制 -1 无限制
- ios - 即使蓝牙关闭,iOS 也会扫描信标
- android - Edittext - 带有日期格式的掩码