【问题标题】:Passing id from this.props.data.id to React ReduxForm将 id 从 this.props.data.id 传递给 React ReduxForm
【发布时间】:2016-05-17 01:34:05
【问题描述】:

我的 ListItem 组件是从另一个组件传递的数据,使用:

renderData() {

 return (
  <ListItem
       key={data.id}
       data={data} />
           )

现在在我的 ListItem 组件中,我可以使用 this.props.data 访问数据。我想将 ID this.props.data.id 传递给 reduxForm 或我的 handleFormSubmit 函数。

我尝试添加一个隐藏的输入字段来传递id,这不起作用?

handleFormSubmit({ id, date }) {

    this.props.post( { id, date })
}

在我的渲染方法中.....

render() {

    const { handleSubmit, fields: { id, date }} = this.props;
     return(
          <div>
          <form className="form-inline" onSubmit={handleSubmit(this.handleFormSubmit.bind(this))}>
              <input {...id} type="hidden" name="id" value={this.props.data.id} />
              <select className="form-control" {...date} >
          <option value="Monday">Monday</option>
              <option value="Tuesday">Tuesday</option>
              <option value="Wednesday">Wednesday</option>
              <option value="Thursday">Thursday</option>
              <option value="Friday">Friday</option>
              <option value="Saturday">Saturday</option>
              <option value="Sunday">Sunday</option>
               </select>
            </form>
         </div>
       )
}


export default reduxForm({

     form: 'day', 
     fields: ['id', 'date']
})

必须有另一种方法将数据添加到我没有看到的handleFormSubmit 方法中吗?

【问题讨论】:

    标签: forms reactjs redux


    【解决方案1】:

    想通了..只需在我的 handleFormSubmit 辅助函数中发送 id 并从表单中删除 id。

    handleFormSubmit({ date }) {
        const id = this.props.data.id;
        this.props.post( { id, date })
    }
    

    【讨论】:

      猜你喜欢
      • 2019-01-24
      • 2019-02-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-06-29
      • 2021-05-07
      • 1970-01-01
      相关资源
      最近更新 更多