2015-03-08 8 views
0

Мой пользовательский фильтр дает мне ошибку.Uncaught TypeError: Не удается прочитать свойство 'filter' of undefined

Uncaught TypeError: Не удается прочитать свойство 'фильтр' неопределенной

код:

angular.module('PatientApp', []).filter('ageFilter', function() { 
    // birthday is a date 
    function calculateAge(birthday) { 
     var dateOut = new Date(birthday); 
     dateOut.setDate(dateOut.getDate() + 1); 
     var ageDifMs = Date.now() - dateOut .getTime(); 
     // miliseconds from epoch 
     var ageDate = new Date(ageDifMs); 
     return Math.abs(ageDate.getUTCFullYear() - 1970); 
    } 
    return function(birthdate) { 
      return calculateAge(birthdate); 
    }; 
}); 
+1

И каков ваш вопрос? Является ли ошибка непонятной? –

ответ

0

Это, кажется, работает хорошо для меня. Без подробностей трудно воспроизвести ошибку. Но ваш код фильтра кажется правильным.

angular.module('PatientApp', []).filter('ageFilter', function() { 
    // birthday is a date 
    function calculateAge(birthday) { 
     var dateOut = new Date(birthday); 
     dateOut.setDate(dateOut.getDate() + 1); 
     var ageDifMs = Date.now() - dateOut .getTime(); 
     // miliseconds from epoch 
     var ageDate = new Date(ageDifMs); 
     return Math.abs(ageDate.getUTCFullYear() - 1970); 
    } 
    return function(birthdate) { 
      return calculateAge(birthdate); 
    }; 
}) 
.controller('mainCtrl', function($scope, $filter){ 
    var ageFilter = $filter('ageFilter'); 
    $scope.age = ageFilter('12/25/1995'); 
}); 

http://plnkr.co/edit/uegoSEWJgqnMCI1ZzPCk?p=preview

Смежные вопросы