Angularjs: при нанесении пользовательских фильтров к данным я получаю пустой выход
Вопрос
Я пытаюсь применить фильтр для некоторых данных, которые я вытаскиваю из Firebase.
Мой HTML выглядит так:
<span ng-bind-html="game.rating | ratings"></span>
.
Примечание. Если я удаляю "| ratings"
, он работает, и выводят исходный текст из Firebase.
Но как только я применяю этот фильтр, я не получаю никакого вывода, это просто пусто.:( Я полностью новых для угловых, JavaScript и Firebase.Так что любой совет очень ценится
'use strict';
MyApp.filter('ratings', function() {
return function(rating) {
switch(rating) {
case 1:
return "1star";
case 2:
return "2stars";
case 3:
return "3stars";
case 4:
return "4stars";
}
}
})
.
У кого-нибудь из вас видели это раньше?
Решение
Может быть, вывод не является int?Разбирать его.И использовать по умолчанию, его хорошая практика.
MyApp.filter('ratings', function() {
return function(rating) {
switch(parseInt(rating)) {
case 1:
return "1star";
case 2:
return "2stars";
case 3:
return "3stars";
case 4:
return "4stars";
default:
return "Not set";
}
}
})
. Не связан с StackOverflow