2016-12-27 69 views
0

HTML代碼TS文件格式化其通過自舉ngbDatepicker選擇在角2

<form novalidate [formGroup]="udpateObj"> 
    <div class="form-group"> 
     <label for="HDresolutionDate">Resolution Date:</label> 
     <input type="text" id="date" formControlName="DateP" ngbDatepicker 
            #d1="ngbDatepicker"> 

    </div> 
    <form> 

代碼中的時間

let dateVal = backendDate;// am getting date obj from backend and 
    this.udpateObj= new FormGroup({ 
    DateP: new FormControl(dateVal) 
}); 

我需要顯示其從後端來的時間或者從dd/mm/yyyy格式的日期選擇器中選擇。

+0

必須有您使用日期在日期選擇器的格式選項。如果沒有什麼,那麼你必須改變手動形式的日期使用javascript –

+0

有沒有原因你不會使用'NgbDateParserFormatter'?根據他們的文檔。 https://ng-bootstrap.github.io/#/components/datepicker – silentsod

回答

2

您可以在這個例子中使用的日期管,如:

<input type="text" value = "{{dateObject | myDateFormat: 'dd/mm/yyyy' }}/> 

或實現自定義的管道,如果選擇的日期是不是一個Date對象。發現這裏例如自定義管道(使用momentjs)申請或電話傳遞的格式的默認格式「HH:MM」

import { Pipe, PipeTransform} from '@angular/core'; 
declare var moment: any; 

@Pipe({ 
    name: 'myDateFormat' 
}) 
export class myDateFormat implements PipeTransform { 
    transform(value: any, args: string[]): any { 
    if (value) { 
     var date = value instanceof Date ? value : moment(value); 
     if (args && args.length > 0) 
      return moment(date).format(args); 
     else 
      return moment(date).format('HH:mm'); 
    } 
    } 
}