2017-05-18 1 views
1

나는 react-datetime을 즉시 사용하고 있습니다.react-datetime을 사용하여 선택한 날짜를 얻는 방법은 무엇입니까?

지금 당장 선택한 날짜를 내 date 상태로 저장하려고합니다.

import DateTime from 'react-datetime'; 
import '../DateTime.css'; 

class SomeClass extends React.Component { 
    render(){ 
    return (
     <div> 
     <DateTime onChange={this.props.handleDate}/> 
     ... 

위의 프로그램은 작동합니다. 누군가가 클릭하면 캘린더를 보여주는 간단한 상자를 표시합니다.

여기 handleDate 방법 :

... 
    handleDate(e){ 
    this.setState({date: e.target.value},() => console.log(this.state.date)) 
    }; 

그것은 내 일반 팔자 작동 '구성 요소 - 부트 스트랩 반응 : 나는 DateTime를 사용할 때 <FormControl type="date" onChange={this.props.handleDate} />을하지만, 그것의 값이 정의되지 않은 것을 말한다. "Schedule.js:135 Uncaught TypeError: Cannot read property 'value' of undefined"

npm site에서 API를보고 있지만 데이터를 가져 오는 방법을 보여주는 예는 표시되지 않습니다. 나는 그것을 과장 할지도 모른다.

DateTime을 사용하여 선택한 날짜의 가치를 얻으려면 어떻게해야합니까? e.target.value이이 경우에는 작동하지 않습니다.

답변

2

docs에서 : 날짜가 변경 될 때 콜백 트리거. 콜백은 입력의 날짜가 유효한 경우 매개 변수로만 선택된 순간 객체를받습니다. 입력 날짜가 유효하지 않으면 콜백은 입력 값 (문자열)을받습니다.

이 정보를 사용하여, 핸들러는과 같이 보일 것입니다 :

handleDate(date){ 
    this.setState({date}); # ES6 
}; 
+0

잡았다을! 그것을 지적 주셔서 감사합니다. 위의 코드는 나에게 '순간'객체를 주지만 약간의 변경을가했으나 제대로 작동하지 않습니다! 'this.setState ({date : date._d})'가 작동합니다. 필요한 날짜는'_d' 키 안에 있습니다. 하지만 당신의 대답이 저를 이끌었습니다. 감사합니다! – Iggy

+0

안녕하세요, 선택한 날짜 타임 스탬프는 어떻게받을 수 있습니까? – hkg328

+0

아, date._d.valueOf()를 호출하여 타임 스탬프를 얻었습니다. 감사합니다. . – hkg328

관련 문제