Как можно вывести данные из массива по 3 элемента в одну строку в RectJS? Такой должен быть результат вывода:
<div class="Row">
<div class="col element">1</div>
<div class="col element">2</div>
<div class="col element">3</div>
</div>
<div class="Row">
<div class="col element">4</div>
<div class="col element">5</div>
<div class="col element">6</div>
</div>
<div class="Row">
<div class="col element">7</div>
</div>
class Row extends Component {
render() {
const {cells} = this.props
return (
<div className="Row">
{cells.map( (c) =>
<div className="col element" key={c.id}>
{c.value}
</div>
)}
</div>
)
}
}
class Table extends Component {
render() {
const {rows} = this.props
return (
<div className='table'>
{rows.map( (r, k) =>
<Row cells={r} key={k} />
)}
</div>
)
}
}
// Использование
class App extends Component {
constructor() {
super();
this.state = {
data: [
[{id: 1, value: 1}, {id: 2, value: 2}],
[{id: 3, value: 3}]
]
}
}
render() {
return (
<Table rows={this.state.data}/>
)
}
}
P.S.
Если у вас будет статическая таблица, которая никогда не меняется, то в качестве ключа (key
) можно использовать индекс элемента в массиве, но если данные в таблицу поступают динамические и могут меняться, то тогда лучше поменять структуру на что-нибудь в таком роде
[{id: 1, value: 1}, {id: 2, value: 2} ... ]
и использовать качестве key
id
элемента, а не его индекс
Прочитать подробнее можно тут (EN: https://medium.com/@robinpokorny/index-as-a-key-is-an-anti-pattern-e0349aece318#.j9101ib23)
Частный дом престарелых в Киеве: комфорт, забота и профессиональный уход
1Нужно стилизовать select, стрелочку я убрал, background линейный вертикальный задал, не могу стрелочку сделать
Здравствуйте, Работаю с Fullcalendar scheduler
Вопрос простойЗачем использовать фреймворки JS когда можно писать на том же jQuery?