Angulaire de la Valeur par Défaut si la Liaison est Nulle
J'ai vu une question similaire, et la suivit jusqu'à un tee-shirt. Angulaire du Modèle de la Valeur par Défaut si la Liaison Null /Indéfini (Avec Filtre)
Mon objet ressemble à ceci:
{
"image": {
"icon_url": "http://static.giantbomb.com/uploads/square_avatar/9/93770/2496414-dying-light-2013523175751_8.jpg",
"medium_url": "http://static.giantbomb.com/uploads/scale_medium/9/93770/2496414-dying-light-2013523175751_8.jpg",
"screen_url": "http://static.giantbomb.com/uploads/screen_medium/9/93770/2496414-dying-light-2013523175751_8.jpg",
"small_url": "http://static.giantbomb.com/uploads/scale_small/9/93770/2496414-dying-light-2013523175751_8.jpg",
"super_url": "http://static.giantbomb.com/uploads/scale_large/9/93770/2496414-dying-light-2013523175751_8.jpg",
"thumb_url": "http://static.giantbomb.com/uploads/scale_avatar/9/93770/2496414-dying-light-2013523175751_8.jpg",
"tiny_url": "http://static.giantbomb.com/uploads/square_mini/9/93770/2496414-dying-light-2013523175751_8.jpg"
},
"name": "Dying Light",
"original_game_rating": null,
"original_release_date": null,
"objectID": "346569380"
}
Je suis emballage de la partie gauche de l'expression entre parenthèses, mais il n'affiche pas "TBA" pour les articles qui ont un an de null
.
<span>{{ (getDate(hit.original_release_date) | date:'yyyy') || 'TBA' }}</span>
J'ai un sentiment, c'est parce que je suis de la référence d'une fonction et déjà à l'aide d'un jeu de parenthèses. Comment puis-je résoudre ce problème...?
Tout, est apprécié. Merci à l'avance!
Mise à JOUR:
Voici la getDate()
fonction:
$scope.getDate = function(date) {
return $filter('dateToISO')(date);
};
Et la dateToISO
filtre:
.filter('dateToISO', function() {
return function(input) {
var dateTime = input.split(" ");
var date = dateTime[0];
var datePartials = date.split("-");
var time = dateTime[1];
var timePartials = time.split(":");
var formattedDate = new Date();
formattedDate.setFullYear(datePartials[0]);
formattedDate.setMonth(datePartials[1]-1);
formattedDate.setDate(datePartials[2]);
formattedDate.setHours(timePartials[0]);
formattedDate.setMinutes(timePartials[1]);
return formattedDate;
};
})
AngularJS version? Pouvez-vous montrer le
Mise à jour de la question avec les
Ne peut pas le reproduire si loin. Pouvez-vous montrer la coutume
Êtes-vous sûr que
Mettre en œuvre
getDate
fonction?Mise à jour de la question avec les
getDate
fonction. À L'Aide Angulaire 1.2.8.Ne peut pas le reproduire si loin. Pouvez-vous montrer la coutume
dateToISO
filtre trop?Êtes-vous sûr que
null
retourné? Il est peut-être la chaîne de 'null'
?Mettre en œuvre
default
filtre aussi. et l'utiliser comme ...|date:'yyyy'|default:'TBA'
OriginalL'auteur realph | 2014-12-15
Vous devez vous connecter pour publier un commentaire.
En œuvre de filtre par défaut aussi.
Et l'utiliser comme:
Mise à jour:
aussi votre
dateToISO
filtre peut échoue, siundefined
ounull
été reçu.Vérifier son entrée.
Ajouter:
Et angulaire, vous devez toujours le faire:
Toujours pas de dés...
où est votre
date
filtre?Il vient après mon module.
angular.module('myApp', ['ngRoute','ngSanitize' ]).filter('dateToISO', function() {...
.pas de
dateToISO
,date
. qui vous donneyyyy
... de toute façon, voir moyen simple de résoudre votre problème dans le fond de la réponse.OriginalL'auteur vp_arth
Essayez ceci:
OriginalL'auteur Tyler Roth