victorzadorozhnyy
@victorzadorozhnyy

Как задавать state onChange для позиции в []?

У меня есть таблица, которая генерируется вместе с полями комментариев.
<Table responsive striped bordered condensed hover>
    <thead>
        <tr >
            <th>#</th>
            <th>Name</th>
            <th>Quantity</th>
        </tr>
    </thead>
    <tbody>
    {
        tabl.map( function(item,index)
     {
         return(
             <tr>
                 <th>{1+index}</th>
                 <th>{item.name}</th>
                 <th>{item.number}</th>
                 
                  <tr>
                     <th colSpan="3">
                         <Input type="textarea" />
                     </th>
             </tr>
             </tr> )}) }
    </tbody>
</Table>

Хочу сделать стейт, в который буду загонять значения textarea в аррей на соответствующий index
Как-то так, но правильно
<Input type="textarea"
    value={this.state.comments[index]}
    onChange={ (event)=> this.state.comments.splice(index, 0, event.target.value ) }
 />
  • Вопрос задан
  • 148 просмотров
Решения вопроса 1
victorzadorozhnyy
@victorzadorozhnyy Автор вопроса
Вот так
onChange={ (event)=> {
    var comment = that.state.comments;
    comment[index] = event.target.value;
    that.setState({ comments: comment });
}}
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы