【问题标题】:Typescript: How to utilize angular $filter within custom filter打字稿:如何在自定义过滤器中使用角度 $filter
【发布时间】:2016-01-20 18:16:16
【问题描述】:

如何在自定义过滤器中使用 angular $filter?如何注入 $filter 依赖?

module Filters {

    export class CustomFilter {
        public static Factory() {
            return function (input:<any>) {

                var result = [];

                //Would like to utilize $filter.('filter') here

                return result;
            }
        }
    }

    angular.module('app')
        .filter('customFilter', [CustomFilter.Factory]);
}

【问题讨论】:

  • @PSL 非常感谢,它确实解决了这个问题。如果您能进一步澄清 //Here use $filter or filterFilter itself 的意思,那也很棒。我成功地利用了这个://public static Factory($filter: ng.IFilterService)
  • @PSL 仅供参考,您的 stackoverflow linkedin 链接断点指向错误的地址。
  • 是的,我的意思是,如果您使用$filter('filter') 来获得内置的拟合函数,您也可以注入filterFilter 而不是$filter

标签: javascript angularjs dependency-injection typescript


【解决方案1】:

您可以只注入$filter 并使用ng.IFilterService 类型或专门使用filterFilter(如果您正在寻找$filter('filter'))并使用Function 类型。

module Filters {
    export class CustomFilter {
        //Here use `$filter` or filterFilter itself
       //public static Factory($filter: ng.IFilterService)
        public static Factory(filter:Function) {
            return function (input:any) {

                var result = [];

                //filter is now $filter('filter')

                return result;
            }
        }
    }

    angular.module('app')
        .filter('customFilter', ['filterFilter', CustomFilter.Factory]);
        //Inject $filter for generic filter getter
} 

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-06-23
    • 2016-12-11
    • 2016-10-01
    • 2020-07-27
    • 2019-02-16
    • 2015-04-17
    • 1970-01-01
    • 2016-05-29
    相关资源
    最近更新 更多