2017-03-22 11 views
1

私はModule1とModule2を持っています。私は両方のモジュールの共通のフィルタを記述する必要があります。だから私は両方のモジュールで使用されるようにグローバルフィルタを作成する方法。サンプルフィルタを含めグローバルモジュールを作成し、アプリモジュールにそのモジュールを挿入することができます異なるモジュールのangularjsでグローバルフィルタを作成する方法

//module One with Filter 
var Module1 = angular.module("Module1App", []); 
Module1.filter('makeUppercase', function() { 
    return function (item) { 
     return item.toUpperCase(); 
    }; 
}); 

//Module two with filter 
var Module2 = angular.module("Module2App", []); 
Module2.filter('makeUppercase', function() { 
    return function (item) { 
     return item.toUpperCase(); 
    }; 
}); 
+2

フィルタのための、私の個人的なアプローチになり、両方のモジュールへの依存性、としてそのモジュールを追加するよりも別々のモジュール。 –

答えて

1

単に作成フィルタを定義する第3のグローバルモジュール:

angular 
    .module("GlobalModule", []) 
    .filter('makeUppercase', function() { 
     return function (item) { 
      return item.toUpperCase(); 
     }; 
    }); 

他の2つのモジュールで使用します。これを行うには、GlobalModuleを注入し、必要な場合にそのフィルタを使用します。

angular.module("Module1App", ["GlobalModule"]); 
angular.module("Module2App", ["GlobalModule"]); 
0

コード

var global= angular.module("globalModule", []); 
global.filter('makeUppercase', function() { 
    return function (item) { 
     return item.toUpperCase(); 
    }; 
}); 

アプリモジュールにグローバルモジュールを注入下に見つけてください

var Module1 = angular.module("Module1App", ["globalModule"]); 

//Module two with filter 
var Module2 = angular.module("Module2App", ["globalModule"]); 
関連する問題