我的場景看起來很簡單,但我嘗試了許多沒有成功的方法。 我需要在我的控制器上調用一個過濾器,這個過濾器用於掩碼,把這個348845697990變成348.8456.979-90。好了,按照我的代碼如下: 1:我的模塊:從控制器調用自定義過濾器angularjs
angular.module('webclientody', []);
angular.module('webclientody').filter('cpf', function() {
return function (input) {
var str = input + '';
if (str.length <= 11) {
str = str.replace(/\D/g, '');
str = str.replace(/(\d{3})(\d)/, "$1.$2");
str = str.replace(/(\d{3})(\d)/, "$1.$2");
str = str.replace(/(\d{3})(\d{1,2})$/, "$1-$2");
}
return str;
};
});
我的控制器:
angular.module('webclientody').controller('LoginCtrl', function ($scope,
$http, $location, $cookies, $rootScope, apiUrl, $filter) {
$scope.init = function() {
var cpf = "348845697990";
cpf = $filter("cpf")(cpf);
};
$scope.init();
});
如果我剪這個代碼和測試它在一個單獨的小項目,它的工作原理。但是,在我的項目出現錯誤:
> Error: [$injector:unpr] http://errors.angularjs.org/1.5.5/$injector/unpr?p0=cpfFilterProvider%20%3C-%20cpfFilter
at angular.js:38
at angular.js:4458
at Object.d [as get] (angular.js:4611)
at angular.js:4463
at Object.d [as get] (angular.js:4611)
at angular.js:19531
at b.$scope.init (LoginCtrl.js:6)
at new <anonymous> (LoginCtrl.js:10)
at Object.invoke (angular.js:4665)
at R.instance (angular.js:10115)
我試過多種方法,但它總是返回此錯誤。任何人有任何建議?
需要很多!
韓國社交協會的回答,遺憾的是它不工作。 –
你在控制檯中遇到了什麼錯誤? –
好友,沒有錯誤發生。它根本不適用過濾器。我最終解決了沒有使用過濾器。感謝您的答案! –