我有以下情況(在服務翻譯過濾器,在HTML文件中使用)AngularJS編程調用從服務過濾器(通過自定義過濾器排序)
// serviceFile
angular.module('myModule')
.service('translation')
.filter('translate', function(translation) {
// translate stuff
return 'translatedString';
});
// controllerFile
angular.module('myModule')
.controller('StringsController', function(blabla, translation) {
$scope.mySort = function() {
return "some magic should happen here";
};
});
// htmlFile
<tr ng-repeat="string in strings">
<td>
{{ string | translate: 'name' }}
</td>
</tr>
(該上面的代碼工作,但也許一些重要的部分被省略,由於我缺乏經驗)
我的問題是,我被要求根據翻譯的值進行排序(類似string in strings | orderBy: mySearch
),我可以' t找到如何從StringsController.mySearch
P.S.以編程方式調用過濾器。該過濾器不從服務返回的(不知道這是有關)
你需要注入_ $ filter_並使用它像'$ filter('translation')(params)' – Grundy
@Grundy,你能給我一個新手鍊接嗎?我只使用非常基本的angularjs,服務甚至不是我的代碼。我甚至不知道我是否應該將其注入控制器或服務中? – norb
另見[guid for filters](https://docs.angularjs.org/guide/filter) – Grundy