AngularJS在Controller中使用Filter

时间:2014-06-18 10:59:08

标签: angularjs angularjs-scope angularjs-filter

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

app.controller('appCtrl', ['$scope', '$http', function($scope, $http, ngTableParams, $filter){
    $http.get('/assets/inc/data').success(function(response) {
        $scope.items = response;
        $filter('offset', function() {
        return function(input, start) {
            console.log(start);
            start = parseInt(start, 10);
            return input.slice(start);
        };
    });
    });
}]);

我有一个小应用程序,我尝试使用$filter。过滤器需要在$http.get完成运行时可用,但上述操作无效。

我哪里出错?

1 个答案:

答案 0 :(得分:0)

你可以把事情搞混一事。过滤器本身必须创建为 app.filter(),然后作为sylwester应用。

创建:

app.filter('filterName' , function() {
    return function(arg1, arg2, ..., argN) {
        // what ever it does
        return ...;
    };
});

应用:

$filter('filterName') (arg1, arg2, ..., argN);

请参阅:plunkr