如何在角度应用程序之间共享过滤器

era*_*ran 2 javascript angularjs

这可能是一个简单的问题,但我无法找到答案.我正在开发几个角度应用程序,我想有一个javascript文件与我正在使用的所有过滤器.

当前我定义了这样的过滤器:

var app = angular.module('MyApp1')
app1.filter('filterCount',function() {
     return function(input) {
        ....
     }
})
Run Code Online (Sandbox Code Playgroud)

如何更改我的代码以为包含此文件的任何应用程序定义此过滤器(例如,如果我希望MyApp2使用它)?有没有办法做到这一点?

谢谢.

Cha*_*ani 8

创建一个通用模块并将其注入任何您想要的位置.

var common = angular.module('common', []) //creates a module 'common'
common.filter('filterCount',function() {
     return function(input) {
        ....
     }
})
Run Code Online (Sandbox Code Playgroud)

然后

var myapp1=angular.module('myApp1',['common']);
var myapp2=angular.module('myApp2',['common']);
Run Code Online (Sandbox Code Playgroud)

  • 然后如何在myApp1和myApp2中引用filterCount? (2认同)