2017-07-01 11 views
3

angular2素材のユーザーは、現在選択されている日付を取得する方法を表示しないようです。... selectedChangedは最後の日付を返します。angular2素材と日付 - 現在選択されている日付を取得する方法

<md-input-container> 
        <input mdInput [mdDatepicker]="picker" placeholder="Choose a date" [(ngModel)]="wtf"> 
        <button mdSuffix [mdDatepickerToggle]="picker"></button> 
      </md-input-container> 
      <md-datepicker #picker [startAt]="startDate" (selectedChanged)="duder()"></md-datepicker> 



duder(){ 
     console.log('duder',this.startDate,this.wtf) 
     console.log('duder--r',moment(this.wtf).format('DD-MM-YYYY')) 
    } 

私は変更を行います。私が得るのは最後の日付です。選択した現在の日付ではありません。

もし私が日付を変更したら...私のduder()関数から現在の日付を取得しますか?

+0

を更新しました。私は現在選択されている日付を取得しています:S https://plnkr.co/edit/05yGj6Zbt4OYIfD3DcON?p=preview – Nehal

+1

これは非常に奇妙です。コンソールのchromeで...印刷されているのは前回の日付です。しかし、テンプレート{{wtf}}を使用している場合、現在選択されている日付を確認しました。これは、例えば、仲間の機能は休息を要求しなければなりません。 – Tampa

+0

別のイベントとして送信すると、すべてがうまくいきます。selectedChagne関数から現在の日付を取得できません。 – Tampa

答えて

2

したがって、@Outputを角度で扱うときはいつも、このトリックは$eventを渡して、関数に新しい値を送出します。それをあなたのduder()に追加すれば設定されます。

(selectedChanged)="duder($event)"

duder(date){ 
    console.log('duder', date); 
    this.wtf = date; 
} 

私はあなたのコードを試してみましたdemo

関連する問題