【发布时间】:2015-08-15 22:37:48
【问题描述】:
我有以下情况(服务中的翻译过滤器,在HTML文件中使用)
// 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)进行排序,但我找不到如何从StringsController.mySearch 以编程方式调用过滤器
附:过滤器没有从服务返回(不知道这是否相关)
【问题讨论】:
-
你需要注入 $filter 并像
$filter('translation')(params)一样使用它 -
@Grundy,你能给我一个新手链接吗?我只使用了非常基本的 angularjs,服务甚至不是我的代码。我什至不知道我应该将它注入控制器还是服务?
标签: javascript angularjs sorting filter