Angularのパイプをモデル内で使う
Angularでは日時のフォーマット操作を行う方法としてpepeが提供されています。
このパイプは、 Viewにバインドされたオブジェクトや変数に対して、|
で、パイプして使います。
今回は、DatePipeに用意されているtransformというメソッドを使って、 |
でパイプせずに、モデル(serviceやcomponent)内で使う方法を紹介します。
通常の使い方
その前に通常の使い方をおさらい
datepipe-test.component.html(view側)
<p>{{date}}</p>
<p>{{date | date: 'y/MM/dd (EE) HH:mm'}}</p>
datepipe-test.component.ts(model側)
import { Component, OnInit } from '@angular/core';
import { DatePipe } from '@angular/common';
@Component({
selector: 'app-datepipe-test',
templateUrl: './datepipe-test.component.html',
styleUrls: ['./datepipe-test.component.css']
})
export class DatepipeTestComponent implements OnInit {
private date: Date;
constructor() { }
ngOnInit() {
this.date = new Date;
}
}
次のように、dateの表示結果がフォーマットされる
モデル内で使う方法
事前に、app.module.ts
内でDatePipe
をproviders
に登録する
app.module.ts
import { DatePipe } from '@angular/common';
...
providers: [DatePipe,...]
datepipe-test.component.html(view側)
<p>{{date}}</p>
<p>{{formattedDate}}</p>
datepipe-test.component.ts(model側)
import { Component, OnInit } from '@angular/core';
import { DatePipe } from '@angular/common';
@Component({
selector: 'app-datepipe-test',
templateUrl: './datepipe-test.component.html',
styleUrls: ['./datepipe-test.component.css']
})
export class DatepipeTestComponent implements OnInit {
private date: Date;
private formattedDate: string;
// DatePipeをインジェクトする
constructor(private datePipe: DatePipe) { }
ngOnInit() {
this.date = new Date;
this.formattedDate = this.datePipe.transform(this.date, 'y/MM/dd (EE) HH:mm');
}
}
通常の使い方と同様に、dateの表示結果がフォーマットされる
Author And Source
この問題について(Angularのパイプをモデル内で使う), 我々は、より多くの情報をここで見つけました https://qiita.com/daikiojm/items/a28db195381dfbfebd07著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .