web-dev-qa-db-fra.com

Comment obtenir la date et l'heure dans Angular 4 avec DatePipe

Je travaille dans une application angulaire 4, Ici, je dois obtenir la date et l'heure actuelles en utilisant angular DatePipe .

Je veux obtenir la date et l'heure dans le format suivant 

jj-mm-aaaa hh: MM: SS AM/PM

J'ai eu l'attendu en utilisant le DatePipe angulaire comme suit 

<p>{{today | date:'dd-MM-yyyy hh:mm:ss a':'+0530'}}</p> 

sortie:

10-05-2018 03:28:57 PM

Ici, je veux obtenir le même résultat de mon app.component.ts sans toucher au code HTML. 

J'ai donc essayé le code ci-dessous, mais il génère un horodatage à 13 chiffres

today = Date.now();
    fixedTimezone = this.today;

SO, comment puis-je obtenir la date et l'heure au format mentionné uniquement à partir du fichier app.component.ts sans utiliser HTML?.

5
Nikson
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 

Et ce format est exactement comme votre question 

dateFormat(now, "dd, mm, yyyy, h:MM:ss TT"); 

renvoie 10, 05, 2018 7:26:57 PM

vous avez besoin du paquet npm npm i dateformatun lien existe pour le paquet npm https://www.npmjs.com/package/dateformat

Voici une autre question qui m'inspire Comment formater une date JavaScript


h:MM:ss TT résultats 7:26:57 PM

HH:MM:ss résultats 13:26:57

Le voici https://jsfiddle.net/5z1tLspw/

J'espère que ça aide. 

8

Will fonctionne sur angulaire 6 ou plus

Vous n'avez besoin d'aucune bibliothèque. Si vous pouvez le faire avec angulaire. importez formatDate depuis un paquet commun et transmettez d’autres données. Voir ci-dessous l'exemple donné.

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');
  }
}

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

9
xdeepakv

Utilise la fonction formatDate pour formater une date conformément aux règles de localisation.

{{ value_expression | date [ : format [ : timezone [ : locale ] ] ] }}

Cela peut être utile :)

0
Rajan Desai