web-dev-qa-db-ja.com

現在の日付をangular 2でYYYY-MM-DD形式に変換する方法

この行を使用して現在の日付を取得します

public current_date=new Date();

そして、私はこの結果を持っています:

Wed Apr 26 2017 10:38:12 GMT+0100 (Afr. centrale Ouest)

どうすればそれをこの形式に変換できますか

YYYY-MM-DD

19
user3237201

ドキュメントごとの例

@Component({
  selector: 'date-pipe',
  template: `<div>
    <p>Today is {{today | date}}</p>
    <p>Or if you prefer, {{today | date:'fullDate'}}</p>
    <p>The time is {{today | date:'jmZ'}}</p>
  </div>`
})
export class DatePipeComponent {
  today: number = Date.now();
}

テンプレート

{{ dateObj | date }}               // output is 'Jun 15, 2015'
{{ dateObj | date:'medium' }}      // output is 'Jun 15, 2015, 9:43:11 PM'
{{ dateObj | date:'shortTime' }}   // output is '9:43 PM'
{{ dateObj | date:'mmss' }}        // output is '43:11'
{{dateObj  | date: 'dd/MM/yyyy'}} // 15/06/2015

コンポーネントで使用します。

@Injectable()
import { DatePipe } from '@angular/common';
class MyService {

  constructor(private datePipe: DatePipe) {}

  transformDate(date) {
    this.datePipe.transform(myDate, 'yyyy-MM-dd'); //whatever format you need. 
  }
}

あなたのapp.module.tsで

providers: [DatePipe,...] 

あとは、このサービスを使用するだけです。

36
Parth Ghiya

Angular 5の場合

app.module.ts

import {DatePipe} from '@angular/common';
.
.
.
providers: [DatePipe]

demo.component.ts

import { DatePipe } from '@angular/common';
.
.
constructor(private datePipe: DatePipe) {}

ngOnInit() {
   var date = new Date();
   console.log(this.datePipe.transform(date,"yyyy-MM-dd")); //output : 2018-02-13
}

詳細 angular/datePipe

32
Jayantha

以下のコードを試してくださいangular 2でもうまく機能します

<span>{{current_date | date: 'yyyy-MM-dd'}}</span>
2

これを行うための非常に便利でコンパクトな方法を次に示します。また、必要に応じてこの関数を変更することもできます。

結果:2017年3月11日

//get date now function
    getNowDate() {
    //return string
    var returnDate = "";
    //get datetime now
    var today = new Date();
    //split
    var dd = today.getDate();
    var mm = today.getMonth() + 1; //because January is 0! 
    var yyyy = today.getFullYear();
    //Interpolation date
    if (dd < 10) {
        returnDate += `0${dd}.`;
    } else {
        returnDate += `${dd}.`;
    }

    if (mm < 10) {
        returnDate += `0${mm}.`;
    } else {
        returnDate += `${mm}.`;
    }
    returnDate += yyyy;
    return returnDate;
}

テンプレートを追加して日付パイプを指定します。日付の形式にエスケープ文字を使用する必要があります。 「MM-yyyy-dd」など、任意の形式を指定できます。

template: '{{ current_date | date: \'yyyy-MM-dd\' }}',
1
Ani