如何使用DatePipe在Angular 4中获取日期和时间

Nik*_*son 7 typescript date-pipe angular

我正在使用角度4应用程序,在这里我需要使用角度DatePipe获取当前日期和时间.

我希望以下列格式获取日期和时间

dd-mm-yyyy hh:MM:ss AM/PM

我通过使用Angular DatePipe获得了预期,如下所示

<p>{{today | date:'dd-MM-yyyy hh:mm:ss a':'+0530'}}</p> 
Run Code Online (Sandbox Code Playgroud)

输出:

10-05-2018 03:28:57 PM
Run Code Online (Sandbox Code Playgroud)

在这里,我想要做的是从app.component.ts获取相同的输出而不触及HTML

所以我尝试了下面的代码,但它生成了一个13位数的时间戳

today = Date.now();
    fixedTimezone = this.today;
Run Code Online (Sandbox Code Playgroud)

那么如何在不使用HTML的情况下从app.component.ts文件中获取所提及格式的日期和时间.

ber*_*gle 16

let dateFormat = require('dateformat');
let now = new Date();
dateFormat(now, "dddd, mmmm dS, yyyy, h:MM:ss TT");
Run Code Online (Sandbox Code Playgroud)
Thursday, May 10th, 2018, 7:11:21 AM 
Run Code Online (Sandbox Code Playgroud)

这种格式与您的问题完全一样

dateFormat(now, "dd, mm, yyyy, h:MM:ss TT"); 
Run Code Online (Sandbox Code Playgroud)

回报 10, 05, 2018 7:26:57 PM

你需要npm包npm i dateformat 这里是npm包的链接https://www.npmjs.com/package/dateformat

这是另一个激发我灵感的问题如何格式化JavaScript日期


h:MM:ss TT 结果 7:26:57 PM

HH:MM:ss 结果 13:26:57

这是https://jsfiddle.net/5z1tLspw/

我希望有所帮助.


xde*_*akv 16

将适用于Angular 6或更高版本

你不需要任何图书馆.如果你可以用角度来做.从普通包导入formatDate并传递其他数据.见下面给出的例子.

import { Component } from '@angular/core';
import {formatDate } from '@angular/common';
@Component({
  selector: 'my-app',
  templateUrl: './app.component.html',
  styleUrls: [ './app.component.css' ]
})
export class AppComponent  {
  today= new Date();
  jstoday = '';
  constructor() {
    this.jstoday = formatDate(this.today, 'dd-MM-yyyy hh:mm:ss a', 'en-US', '+0530');
  }
}
Run Code Online (Sandbox Code Playgroud)

stackblitz:https://stackblitz.com/edit/angular-vjosat file = ssrc%2Fapp%2Fapp.component.ts