我认为这个问题之前已经问过很多次了。我已经在我的角度项目中实现了 DatePipe,格式正确,只是它显示了当前日期,这不是我想要的,也不是我从休息服务收到的日期。我从 REST 服务 (createdOn) 中得到一个过去的日期。这是我的代码:
TS
import { DatePipe } from '@angular/common';
export class PostComponent implements OnInit {
post: Postpayload;
newDateFormat: string;
constructor(private router: ActivatedRoute,
private postService: PostService, public datepipe: DatePipe) {
this.post = {
createdOn: new Date()
};
this.newDateFormat = this.datepipe.transform(this.post.createdOn, 'dd-MM-yyyy');
}
}
后有效载荷
export class Postpayload {
id: number;
content: string;
title: string;
username: string;
createdOn: Date;
}
ngOnInit(): void {
this.router.params.subscribe( params => {
this.permaLink = params.id;
});
this.postService.getPost(this.permaLink).subscribe( ( data:Postpayload)
=> {
this.post = data;
}, (err: any) => {
console.log(err);
console.log('failure response');
});
}
HTML
<p>{{ newDateFormat }}</p>
这会导致我获得当前日期或今天的日期,我的问题是如何格式化从我的休息 Api 服务调用中收到的 this.post.createdOn 的日期。当我不使用 DatePipe 时,它会显示正确的日期,但我不想要这种默认的完整样式日期格式。
邮政服务
getPost(permaLink: number): Observable<Postpayload> {
return this.http.get<Postpayload>(this.url + 'get/' + permaLink);
}