在我的应用程序中,我从 API 响应中获取消息发送日期,我想使用 ngFor 中的 angular 8 和 map 计算当前日期与 API 响应日期之间的差异(天数(差异))。
https://stackblitz.com/edit/angular-xv1twv?file=src%2Fapp%2Fapp.component.html
请帮我。我应该使用时刻。
我正在尝试创建帖子共享网站。我想以角度创建日期前管道。
import {Pipe, PipeTransform} from 'angular2/core';
@Pipe({
name: 'messageTime',
pure: false
})
export class MessageTimePipe implements PipeTransform {
transform(value: Date, []): string {
var result: string;
// current time
let now = new Date().getTime();
// time since message was sent in seconds
let delta = (now - value.getTime()) / 1000;
// format string
if (delta < 10) {
result = 'jetzt';
} else if (delta < 60) { // sent in last minute
result = 'vor ' + Math.floor(delta) + …Run Code Online (Sandbox Code Playgroud) 我按照这个链接创建了我自己的时间前管道: Angular 2 "time ago" pipe
但是当我注入并使用它时,我看到了错误:
模板解析错误:找不到管道“timeAgo”
下面是我的代码,请帮我解决这个问题,非常感谢!!
timeAgo.pipe.ts
import { Pipe, ChangeDetectorRef } from '@angular/core';
import { AsyncPipe } from '@angular/common';
import { Observable } from 'rxjs/Observable';
import 'rxjs/add/observable/interval';
import 'rxjs/add/operator/startWith';
@Pipe({
name: 'timeAgo',
pure: false
})
export class TimeAgoPipe extends AsyncPipe {
value: Date;
timer: Observable<string>;
constructor(private ref: ChangeDetectorRef){
super(ref);
}
transform(obj: any, args?: any[]): any {
if(obj instanceof Date) {
this.value = obj;
if(!this.timer) {
this.timer = this.getObservable();
}
return this.timer;
}
return this.transform(obj, args);
} …Run Code Online (Sandbox Code Playgroud)