这是我在 Angular 2 应用程序中遇到的一个非常困难的问题。我正在尝试格式化我的 API (MongoDB),以便前端可以按日期(而不是时间)获取管理员添加的每个新“帖子”。例如,我的架构如下所示:
{name: "The best product ever",date: "25092016",quantity: 345},{name:"The okayest product ever",date: "26092016",quantity: 544,}
正如您所知,日期属性是一个数字。然后我有一个函数可以从对象中获取当前日期的数据。然而,这就是问题所在。我用于 JSON 的日期格式是“ddMMyyyy”。这对于 HTML 模板中的日期管道效果很好,但我似乎无法格式化变量中的任何日期以匹配此格式或类似格式。 Angular 2 类中的所有日期都显示 GMT 和时间戳等。
如何在 Angular 2 组件中设置日期格式以匹配简短的字符串格式?
最佳答案
您甚至可以在代码中使用该DatePipe
。 :)
https://plnkr.co/edit/6pbHMVSTmndvs9CqYYUL?p=preview
import {Component, NgModule} from '@angular/core'
import {BrowserModule} from '@angular/platform-browser'
import {DatePipe} from '@angular/common';
@Component({
selector: 'my-app',
template: `
<div>
<h2>Hello {{name}}</h2>
</div>
`,
})
export class App {
name:string;
constructor() {
this.name = 'Angular2'
let dp = new DatePipe('de-DE' /* locale .. */);
this.name = dp.transform(new Date(), 'ddMMyyyy');
console.log(name);
}
}
@NgModule({
imports: [ BrowserModule ],
declarations: [ App ],
bootstrap: [ App ]
})
export class AppModule {}
或者你想使用像 Moment.js 这样的库..
关于json - 在 Angular 2 和 JSON 中保存日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39714403/