Datepicker с response-redux не работает "ожидаемый экземпляр даты" - PullRequest
0 голосов
/ 12 февраля 2019

Я создаю форму с использованием избыточной формы response-datepicker и момента, но получаю сообщение об ошибке с форматом даты.

Она отображает несколько ошибок и сообщение о недопустимом поле ввода в DatePicker

Вот моя утилита для форм:

import React from 'react'
import { Form, Label } from 'semantic-ui-react'
import DatePicker from 'react-datepicker'
import 'react-datepicker/dist/react-datepicker.css'
import moment from 'moment'

const DateInput = ({input, width, placeholder, meta: {touched, error}, ...rest}) => {
    return(
        <Form.Field error={touched && !!error} width={width}>
            <DatePicker 
                {...rest}
                placeholderText={placeholder}
                selected={input.value ? moment(input.value) : null}
                onChange={input.onChange}
            />
            {touched && error && <Label basic color="red">{error}</Label>}
        </Form.Field>
    )
}

export default DateInput

И импорт компонента с использованием поля поле redux-form

<Field
 name="date"
 type="text"
 component={DateInput}
 dateFormat="YYYY/MM/DD HH:mm"
 timeFormat="HH:mm"
 showTimeSelect
 placeholder="Date and time of event"
/>

Я уже использовал момент (). Формат (), чтобы показатьдата в поле datepicker, но затем она показывает эту ошибку:

Недопустимый реквизит selected типа Moment, предоставленный DatePicker, ожидаемый экземпляр Date.

1 Ответ

0 голосов
/ 01 августа 2019

В определенных типах propTypes вам нужно изменить

selected: PropTypes.instanceOf(Date)

на

selected: PropTypes.instanceOf(Moment)

...