我想创建一个可以将年份(1992年)转换为年龄(26岁)(韩国年龄)的管道
我想我应该加载当前年份(2017年),减去1992年并加上+1
但我不知道如何用管道来实现这一点。
我提前感谢您的帮助。
答案 0 :(得分:9)
块引用
以下是我使用moment.js的示例(它还显示了几年的月份,随时删除它):
import { Pipe, PipeTransform } from '@angular/core';
import * as moment from 'moment';
@Pipe({
name: 'age'
})
export class AgePipe implements PipeTransform {
transform(value: Date): string {
let today = moment();
let birthdate = moment(value);
let years = today.diff(birthdate, 'years');
let html:string = years + " yr ";
html += today.subtract(years, 'years').diff(birthdate, 'months') + " mo";
return html;
}
}
然后在HTML中使用此管道:{{person.birthday|age}}
,其中person.birthday
是Javascript Date对象。