Ci-dessous, les différences entre deux révisions de la page.
| Prochaine révision | Révision précédente | ||
|
langages:angular:charger_date [2020/02/12 16:57] jonathan créée |
langages:angular:charger_date [2021/08/27 11:35] (Version actuelle) jonathan |
||
|---|---|---|---|
| Ligne 5: | Ligne 5: | ||
| <code javascript> | <code javascript> | ||
| - | maDate = new Date(maDate); | + | maDate = (maDate ? new Date(maDate) |
| + | </ | ||
| + | |||
| + | traitement sur une liste d’objets : | ||
| + | |||
| + | <code javascript> | ||
| + | // fix dates : JSON => Date() | ||
| + | this.rappels.map(curRappel => { | ||
| + | curRappel.date = (curRappel.date ? new Date(curRappel.date) : null); | ||
| + | }) | ||
| + | </ | ||
| + | |||
| + | <code javascript> | ||
| + | /** | ||
| + | * Convertir une date JSON vers un objet Date JS au fuseau local. | ||
| + | * Interpréter la chaîne JSON comme étant une date uniquement (on force l’heure à 12h pour ne pas avoir la date qui change avec Firefox). | ||
| + | * @param jsonDate : chaîne json de type date/heure UTC (sera convertie en Date locale (à 12h)) ou bien Date (sera copiée et forcée à 12h). | ||
| + | * @returns date locale. | ||
| + | */ | ||
| + | public static jsonUtcDateToLocaleDate(jsonDate: | ||
| + | let retVal: Date = null; | ||
| + | if (jsonDate) { | ||
| + | // on veut que la date du JSON qui est un string, soit convertie en Date et interprétée comme étant | ||
| + | // une date UTC => on ne garde que la partie date => les 10 premiers caractères de la chaîne | ||
| + | // source : https:// | ||
| + | |||
| + | // s’il s’agit bien d’une string | ||
| + | if (jsonDate instanceof String) { | ||
| + | retVal = new Date((jsonDate as string).slice(0, | ||
| + | // s’il s’agit déjà d’une date => on n’a rien à changer | ||
| + | } else { | ||
| + | retVal = new Date(jsonDate as Date); | ||
| + | } | ||
| + | // forcer à 12h car Chrome et Firefox ne décalent pas les heures de la même manière. | ||
| + | retVal.setHours(12, | ||
| + | } | ||
| + | return retVal; | ||
| + | } | ||
| </ | </ | ||