2017-03-11 6 views
0

나는 redux 형식으로 날짜 선택 도구를 사용하고 있습니다. 나는 단지 1 년을 보여주고 싶다. 그러나 데이터 년 필드를 게시하는 동안 데이터베이스에 NULL이 가고있다.날짜 선택 도구를 redux 형식으로 사용하는 방법

아무도 도와 줄 수 있습니까?

const renderDatePicker = ({input, placeholder, defaultValue, meta: {touched, error} }) => (
    <div> 
     <DateTimePicker {...input} format={"YYYY"} selected={input.value ? moment(input.value) : null} time={false} initialView={"decade"} finalView={"decade"} /> 
    {touched && error && <span>{error}</span>} 
    </div> 
); 

<Field name="year" component={renderDatePicker} /> 

감사

+0

이 함수를 redux 형식으로 어떻게 사용합니까? –

답변

1

올바른 방법을 DateTimePicker 소품에 대한 모든 소품을 통과해야 :

이 내 코드입니다. 나는 다른 항상 당신이이 경우에 null을 얻을 것이다,있는 DateTimePicker 구성 요소를 작동하는 방법을 알고 있지만, 당신이있는 DateTimePicker 속으로

<DateTimePicker **{...input}** format={"YYYY"} selected={input.value ? 
moment(input.value) : null} time={false} initialView={"decade"} 
finalView={"decade"} /> 
{touched && error && <span>{error}</span>} 

을 수행 할 때 입력 소품에 REDUX 형태의 입력을 할당해야하지 않습니다. 또한 당신은 그것을 볼 수있는 값을 변경할 때마다 'validate'속성 함수를 사용하여 redux-form을 체크인 할 수 있습니다.

편집 :

나는 보았다 반작용 네이티브를 들어,이 경우에 우리가 입력을하지 않아도하지만이 방법으로 사용했다 DatePicker에서처럼 뭔가를해야하기 때문에 나는이 같은 몇 가지 문제를 찾고 있었다 :

<Field name="birthday" 
     component={ props => 
      <DatePicker 
      date={props.input.value} 
      onDateChange={(date) => props.input.onChange(moment(new Date(date)).format("MM/DD/YYYY"))} 
      /> 
    }/> 

이 방법이 최선의 방법은 아니지만이 해결책이 도움이 될 수 있습니다.

+0

가치는 행동 창조자에게 가지 않을 것입니다. –

관련 문제