簡體   English   中英

用redux-form反應Datepicker

[英]React Datepicker with redux-form

如何使react-datepicker與redux-form綁定?

我有這個redux-form字段:

<Field name="due_date" component={props =>
  <DatePicker
    {...props}
    readOnly={true}
    selected={this.state.due_date}
    value={this.state.due_date}
    onChange={this.handleDueDate}  
  />
} />

每當我提交redux表單時,確實會返回一個未綁定datepicker值的空對象...

我的onChange:

  handleDueDate(date) {
    this.setState({
      due_date: moment(date).format('L')
    }, () => {
      // do I need to dispatch and action here to update the redux-form in state tree? 
    })
  }

您必須制作一個自定義組件以使用redux-form驗證和使用datepicker

嘗試這個

const datePicker = ({ input, label, type, className, selected, meta: { touched, error } }) => (
      <div>
        <div>
          <DatePicker {...input}
            selected={selected} placeholder={label}
            type={type} className={className}
            peekNextMonth
            showMonthDropdown
            showYearDropdown
            dropdownMode="select"
          />
          {touched && error && <span className="error_field">{error}</span>}
        </div>
      </div>
    )

然后將道具傳遞給該自定義組件

          <Field
            name="date_of_birth"
            component={datePicker}
            type="text"
            selected={this.state.date_of_birth}
            onChange={this.handleChange.bind(this)}
            className="form-control"
          />

對於將來的讀者,只需轉到此鏈接: Redux表單中的DatePicker

首先,我在上面的鏈接中創建了類似提及的組件,並在其中傳遞了選定的道具。 就我而言:

<Field
             name="due_date"
             component={DatePickerComponent}
             selected={this.state.date_of_briefing} />

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM