【问题标题】:React-day picker with redux form带有 redux 表单的 React-day 选择器
【发布时间】:2017-05-07 13:50:24
【问题描述】:

我需要使 react-day 选择器组件与 redux 表单兼容。我知道这不是绝对正确的,但 redux 形式对我当前的项目来说是强制性的。但我很难做到。我使用了反应日期选择器,我使它与这种方式兼容:

import React from 'react';
import { PropTypes } from 'prop-types';
import DatePicker from 'react-datepicker';
import moment from 'moment';
import { injectIntl, intlShape } from 'react-intl';
import 'react-datepicker/dist/react-datepicker.css';

    const MyDatePicker = props => (
      <div>
        <DatePicker
          {...props.input}
          dateFormat="DD-MM-YYYY"
          selected={props.input.value
            ? moment(props.input.value, 'DD-MM-YYYY')
            : null}
          placeholderText={props.placeholder}
          disabled={props.disabled}
        />
        {
          props.meta.touched && props.meta.error &&
          <span className="error">
            { props.intl.formatMessage({ id: props.meta.error }) }
          </span>
        }
      </div>
    );

    MyDatePicker.propTypes = {
      input: PropTypes.shape().isRequired,
      placeholder: PropTypes.string,
      disabled: PropTypes.bool,
      meta: PropTypes.shape().isRequired,
      intl: intlShape.isRequired
    };

    export default injectIntl(MyDatePicker);

但我很难用反应日选择器来做到这一点。谁能帮我实现这一目标?

【问题讨论】:

    标签: javascript date reactjs redux-form react-day-picker


    【解决方案1】:

    几个月前我遇到了类似的问题,该项目要求使用 redux 表单和日期选择器。我想到的解决方案是将日期选择器包装到它自己的组件中,然后将该组件包装在另一个组件中,然后将其用作 redux 表单中的自定义输入组件。

    我想您不必像我那样包装多次,但概念应该仍然相似。看看这个问题中的代码,因为它展示了如何将日期选择器与 redux-forms 结合的示例:

    How to onFocus and onBlur a React/Redux form field that's connected to React Date Picker?

    【讨论】:

    • 感谢您回答凯尔。但是我必须为与日期选择器不同的反应日选择器执行此程序。但似乎我错过了一些东西......:(
    • 对不起,我错了,但我会仔细阅读。谢谢队友;)
    • 您缺少哪些内容?这两个日期选择器看起来很相似,你可以用一个代替另一个,也许需要做一些修改。您当前的方法遇到了什么错误,或者没有按预期工作?
    • 我没有在控制台中收到错误...但是我的日期选择器似乎不起作用。我不明白我错过了什么:/
    • 用这段代码它说它不能得到 null 的 setState
    猜你喜欢
    • 2019-04-03
    • 1970-01-01
    • 1970-01-01
    • 2019-05-20
    • 1970-01-01
    • 2013-11-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多