Javascript 如何在angular中注入uppercaseFilter?

Javascript 如何在angular中注入uppercaseFilter?,javascript,angularjs,Javascript,Angularjs,我尝试将大写过滤器作为依赖项注入控制器,我尝试注入orderByFilter,它工作得完美无缺。 您可以参考我的示例Plunker项目 您必须手动处理对象数组,因为大写筛选器仅对字符串有效。在您的情况下,可以如下所示,例如: $scope.users = $scope.users.map(function(obj) { obj[$scope.upperCase] = obj[$scope.upperCase].toUpperCase(); return obj; }); 演示

我尝试将大写过滤器作为依赖项注入控制器,我尝试注入orderByFilter,它工作得完美无缺。 您可以参考我的示例Plunker项目


您必须手动处理对象数组,因为大写筛选器仅对字符串有效。在您的情况下,可以如下所示,例如:

$scope.users = $scope.users.map(function(obj) {
    obj[$scope.upperCase] = obj[$scope.upperCase].toUpperCase();
    return obj;
});
演示:

它可能会对您有所帮助

HTML代码示例

<span>{{ users.fName | limitTo : 3 | uppercase }}</span>
<span ng-bind="users.fName | limitTo : 3 | uppercase "></span>
<script>
  angular.module("myApp").controller("myController"), function($filter){

    var result = $filter(‘limitTo’)(users.fName, 3);
    $filter(‘uppercase’)(result);
    ...
  }
</script>
{{users.fName | limito:3 |大写}
AngularJs代码示例

<span>{{ users.fName | limitTo : 3 | uppercase }}</span>
<span ng-bind="users.fName | limitTo : 3 | uppercase "></span>
<script>
  angular.module("myApp").controller("myController"), function($filter){

    var result = $filter(‘limitTo’)(users.fName, 3);
    $filter(‘uppercase’)(result);
    ...
  }
</script>

角度.module(“myApp”).controller(“myController”)、函数($filter){
var result=$filter('limito')(users.fName,3);
$filter('大写')(结果);
...
}

uppercaseFilter
用于字符串,而不是数组。您需要自己迭代数组,应用过滤器(或只是执行本机
.toUpperCase()
)obj[$scope.upperCase]=uppercaseFilter(obj[$scope.upperCase])会更合适,因为他正在尝试注入过滤器,不是吗?或者更简单一点,在模板上加上后缀“| uppercase”会更容易一些。是的,你是对的,我只是想证明uppercaseFilter只是一个对应的方法。