为“react-datepicker”插入 mm/dd/yyyy 格式的自动斜杠日期

dre*_*001 3 reactjs react-datepicker

我在我的项目中使用react-datepicker。所需的格式为 mm/dd/yyyy。我想要的是,如果我想输入日期,应该采用日期格式。

例如:我想要日期 1980 年 1 月 21 日。当我从日期选择器中选择时,它的格式正确(01/21/1980)。

现在,如果我输入相同的日期,它不会自动在之间插入斜杠,而是显示日期,如 01211980。

<div className="dashboard-patients-details_row_value">
   <Field name="DateRec" component={Datepicker} disabled={isEditing?false:true}/>
</div>

<div className="datepicker">
   <DatePicker
      selected={value ? moment(value) : null}
      onChange={onChange}
      disabled={disabled}
    />
  <div className="calendar-block">
    <CalendarIcon onClick={this.datepicker}
  />
 </div>
</div>
Run Code Online (Sandbox Code Playgroud)

如何解决这个问题?

dre*_*001 5

我解决了这个问题。这是我的代码

    import MaskedInput from 'react-text-mask'
import createAutoCorrectedDatePipe from 'text-mask-addons/dist/createAutoCorrectedDatePipe'

const autoCorrectedDatePipe = createAutoCorrectedDatePipe('mm/dd/yyyy HH:MM')
<DatePicker
                    selected={value ? moment(value) : null}
                    onChange={onChange}
                    disabled={disabled}
                    customInput={
                        <MaskedInput
                            pipe={autoCorrectedDatePipe}
                            mask={[/\d/, /\d/, '/', /\d/, /\d/, '/', /\d/, /\d/, /\d/, /\d/]}
                            keepCharPositions= {true}
                            guide = {true}
                        />

                    }
                />
Run Code Online (Sandbox Code Playgroud)