javascript - Hvordan få dato og klokkeslett i Angular 4,5,6 og nyere ved bruk av DatePipe
Jeg jobber i en Angular 4-applikasjon. Her trenger jeg å få den nåværende datoen og tiden ved å bruke Angular DatePipe.
Jeg vil hente dato og klokkeslett i følgende format
dd-mm-yyyy hh:MM:ss AM/PM
Jeg fikk det forventede ved å bruke Angular DatePipe som følger
<p>{{today | date:'dd-MM-yyyy hh:mm:ss a':'+0530'}}</p>
utdata :
10-05-2018 03:28:57 PM
Her er det jeg vil gjøre, å få samme resultat fra min app.component.ts uten å berøre HTML-ene
Så jeg prøvde koden nedenfor, men den genererer et 13-sifret tidsstempel
today = Date.now();
fixedTimezone = this.today;
Så hvordan kan jeg få dato og tid i det nevnte formatet kun fra app.component.ts-filen uten å bruke HTMLs.
Svar #1
Vil fungere på Angular 6 eller nyere
Du trenger ingen tredjepartsbibliotek. Du kan formatere ved å bruke Angular method/util. importer formatDate fra common-pakken og send inn annen data. Se eksemplet nedenfor.
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');
}
}
stackblitz: https://stackblitz.com/edit/angular-vjosat?file=src%2Fapp%2Fapp.component.ts
Svar #2
let dateFormat = require('dateformat');
let now = new Date();
dateFormat(now, "dddd, mmmm dS, yyyy, h:MM:ss TT");
Thursday, May 10th, 2018, 7:11:21 AM
Og dette formatet er akkurat som spørsmålet ditt
dateFormat(now, "dd, mm, yyyy, h:MM:ss TT");
returnerer 10.05.2018 19:26:57
du trenger npm-pakken npm i dateformat her er en lenke til npm-pakken https://www.npmjs.com/package/dateformat
Her er et annet spørsmål som inspirerer meg: Hvordan formatere en JavaScript-dato
h:MM:ss TT gir 7:26:57 PM
HH:MM:ss gir 13:26:57
Her er det https://jsfiddle.net/5z1tLspw/
Jeg håper det hjelper.
