Я использую bootstrap, и я хочу отобразить 4 столбца в строке. Однако я не знаю, сколько столбцов у меня будет, поэтому оно должно работать для любого количества столбцов, а также первый столбец может быть другим компонентом реакции, а затем другими столбцами.React.js + строки рендеринга Bootstrap
То, что я хочу добиться:
<div class="row">
<div class="col-md-3 component-type-1">...</div>
<div class="col-md-3 component-type-2">...</div>
<div class="col-md-3 component-type-2">...</div>
<div class="col-md-3 component-type-2">...</div>
</div>
<div class="row">
<div class="col-md-3 component-type-2">...</div>
<div class="col-md-3 component-type-2">...</div>
<div class="col-md-3 component-type-2">...</div>
<div class="col-md-3 component-type-2">...</div>
</div>
я пытался что-то, но не удалось добиться того, что я хочу ..
import chunk from 'lodash/chunk.js'
class Test extends React.Component {
render() {
let component1=null;
if (this.state.shouldBeComponent1) {
component1=<Component1 key="component1" />;
}
let items = [];
if (component1!=null) items.push(component1);
this.state.dataForComponents2.forEach((data) => {
items.push(<Component2 key={data.ID} />)
});
const rows = chunk(items, 4);
let pageBody=null;
if (items.length>0) {
pageBody=(
rows.map((row) => {
<div className="row">
{
row.map((item) => (
{item}
))
}
</div>})
);
}
return (
<div>
<div className="header">
///Other unreleated code
</div>
{pageBody}
</div>
);
}
Что такое результат, который вы получите с выше –
я не получаю никакого вывода из {pageBody}. Если я завершу {pageBody} в div, я получаю только пустой div –
Не могли бы вы попытаться создать скрипку для того же –