2016-09-18 81 views
0

我想使用角度過濾器以特殊格式顯示日期,但是當我使用此基本代碼時,我得到此錯誤:
angular.js :12221錯誤:[$注射器:unpr]未知提供商:myFilterFilterProvider ...在角度中使用自定義過濾器不適用於日期對象

var app = angular.module('app', []) 

.controller('appController', function ($scope) { 
    var d = new Date(); 
    $scope.days = [ 
    { 
     name: 'A string date', 
     value: d 
    } 
    ]; 
}) 

.filter('dateFilter', function() { 
    return function(value) { 
     return value; 
    } 
}) 

然後,我把這個代碼的html:

<!DOCTYPE html> 
<html ng-app="app"> 
<head> 
    <meta charset="UTF-8"> 
    <title>Angular filter</title> 
    <script src="angular.js"></script> 
    <script src="app.js"></script> 
</head> 
<body ng-controller="appController"> 

    <ul> 
    <li ng-repeat="day in days"> 
     <span>{{day.name}}</span> 
     <p>{{day.value | myFilter }}</p> 
    </li> 
    </ul> 

</body> 
</html> 

我得到這個錯誤:

angular.js:12221 Error: [$injector:unpr] Unknown provider: myFilterFilterProvider <- myFilterFilter 
http://errors.angularjs.org/1.4.0/$injector/unpr?p0=myFilterFilterProvider%20%3C-%20myFilterFilter 
    at angular.js:68 
    at angular.js:4238 
    at Object.getService [as get] (angular.js:4385) 
    at angular.js:4243 
    at Object.getService [as get] (angular.js:4385) 
    at angular.js:17951 
    at isStateless (angular.js:12845) 
    at findConstantAndWatchExpressions (angular.js:12902) 
    at angular.js:12856 
    at forEach (angular.js:336) 
+0

yur過濾器的名稱是dateFilter那麼爲什麼你在html中使用myFilter –

回答

0

使用dateFilter代替myFilter在HTML

<p>{{day.value | dateFilter }}</p> 

誤差約爲myFilter的注射器。
您還沒有在任何地方聲明myFilter。所以你正在得到有關過濾器的錯誤

+0

哦!謝謝。 我被燒了。最歡迎的夥計 –

+0

哦 –

相關問題