redux-form immutable提交所有字段

时间:2017-07-11 05:23:32

标签: redux-form immutable.js

我正在使用redux-form immutable,我正在尝试做简单的todo列表,我正在使用FieldArray来处理todo项目,

提交表单时,我没有得到索引的值,因为它只为用户读取,而且我使用div进行渲染。如何在提交表单期间获取索引的值。 MyCustom组件应该如何。

<TableRow selectable={false} key={index}>
    <TableRowColumn style={styles.item}>
      <Field name={`${todo}.index`} component={MyCustom} val={index + 1} />
    </TableRowColumn>
    <TableRowColumn style={styles.done}>
      <Field name={`${todo}.done`} component={CheckBox} label=""/>
    </TableRowColumn>
    <TableRowColumn style={styles.description}>
      <Field name={`${todo}.description`} component={Text}/>
    </TableRowColumn>
    <TableRowColumn style={styles.duration}>
      <Field name={`${todo}.duration`} component={Duration} type="number" normalize={integer}/>
    </TableRowColumn>
    <TableRowColumn style={styles.delete}>
      {/* <button type="button" title="X"  onClick={() => fields.remove(index)}>X</button> */}
      <IconButton onClick={() => fields.remove(index)}>
        <DeleteIcon/>
      </IconButton>
    </TableRowColumn>
  </TableRow>

MyCustom

  <div>
    <span>{val}</span>
  </div>

1 个答案:

答案 0 :(得分:0)

index这里不是一个字段,它只是一个值。所以把它作为道具传递。

<MyCustom val={index + 1} />