在单独的文件中过滤会抛出未知的提供者

时间:2014-10-22 16:50:07

标签: angularjs

我生成以下文件(slice.js):

function slice ($scope) {
   return function(arr, start, end) {
       return arr.slice(start, end)
   }
}

angular
   .module('loop')
   .filter('slice', slice)

在我的指令模板中,我调用过滤器

div(ng-repeat="(periodKey,period) in periods | slice:start:end").col

我收到了unnow提供程序错误。

但是当我在我的app.js中定义过滤器时,就像这样

app.filter('slice', function() {
   return function(arr, start, end) {
      return arr.slice(start, end);
   };
});

没有错误,它运行正常。你能帮我解决这个问题吗?

谢谢!

1 个答案:

答案 0 :(得分:1)

从切片函数的参数中删除$scope

Angular期望在那里注入服务,并且没有服务提供商称为$scope(显然)。在此处阅读Angular中的dependency injection