2017-07-11 11 views
1

私は実際に小さな仕事のために3つの日付を取ることになっていて、それらの3つから複数の他の日付を計算しています。これらはルーチンチェックなどの日付になっています... 私は複数の入力を処理する方法を見つけることができません。ネイティブ複数入力に反応します

<DatePicker 
    dateMes={this.state.dateMes} 
    mode="date" 
    placeholder="select date" 
    format="DD-MM-YYYY" 
    minDate="01-01-1950" 
    maxDate="01-01-2050" 
    androidMode="spinner" 
    showIcon={false} 
    onDateChange={this.onDateChange} 
/> 

唯一の変化に伴う(dateInitとdateLastなる)dateMesです:私はこのようになり3 DatePickersは、持っています。

constructor(props) { 
    super(props) 
    this.state = { dateMes: "01-01-2000" } 
    this.state = { dateLast: "01-01-2000"} 
    this.state = { dateInit: "01-01-2000" } 
} 

私は一種のnoobのだ、それは基本的な問題になることがあります。 は私が持っているものを開始します。 私の質問は:私は何を変えなければならないのですか。そして、3つの異なる入力を扱うためにはどのような名前を変えなければなりませんか?

ありがとうございました!

答えて

2

あなたはこの機能を追加することができます。

onDateChange = (state) => (event,value) => { 
    this.setState({ 
    [state]:value 
    }); 
} 

をしてから、あなたのコードを変更:たとえば

onDateChange={this.onDateChange('your state name'} 

:に

onDateChange={this.onDateChange} 

onDateChange={this.onDateChange('dateMes')} 

はたぶん、あなたを助けることができます:) 注:あなたがこれにあなたのコンストラクタメソッドを変更することができます。

constructor(props) { 
    super(props) 
    this.state = { 
    dateMes: "01-01-2000", 
    dateLast: "01-01-2000", 
    dateInit: "01-01-2000" 
    } 
} 

を私はそれがより良い、幸運だと思います:)

+0

私はそれをテストしました。私は得ています "可能性のある未承諾の拒絶(id:0):ReferenceError:変数を見つけることができません:名前"と多くのURL。 –

+0

申し訳ありませんが、 '[state]:name'を' [state]:value'に変更できますか? –

関連する問題