Javascript 如何在过滤领域使用angularjs过滤器

Javascript 如何在过滤领域使用angularjs过滤器,javascript,angularjs,angularjs-filter,Javascript,Angularjs,Angularjs Filter,控制器 app.controller('viewUsersController', function($scope, $http, $cookieStore, $modal) { $scope.cardsDisplayModeEnabled = true; $http.get('http://localhost:8080/myapp/user/all?access_token=' + $cookieStore.get("access_token")).

控制器

    app.controller('viewUsersController', function($scope, $http, $cookieStore, $modal) {
        $scope.cardsDisplayModeEnabled = true;
        $http.get('http://localhost:8080/myapp/user/all?access_token=' + $cookieStore.get("access_token")).
        then(function(response) {
            $scope.users = response.data;
        });

    $scope.filterStarWith = function(level) {
        var re = new RegExp('^' + "Supervisor", "i");
        return level.tfAccessLevel.match(re);
    };
})
HTML

 <select ng-controller="viewUsersController" ng-model="user.tfSupervisor.id" name="createSupervisor" id="createSupervisor" class="form-control">
    <option ng-repeat="level in users | filter:filterStarWith()">{{level.userFirstName}}</option>
</select>


Table : user
Id         username          accesslevel          
1            John               Admin
2            Mark               Supervisor
3            Chady              Admin

{{level.userFirstName}
表:用户
Id用户名访问级别
1约翰行政
2马克主管
3查迪行政
我必须在选项中列出访问级别为“主管”的选项


谢谢,

您可以直接在ng repeat中按访问级别进行筛选

ng-repeat="level in users | filter:{tfAccessLevel:'Supervisor'}"

看看这个答案:

您只需使用现有的过滤器选项就可以做到这一点

 <select ng-model="user.id" name="createSupervisor" id="createSupervisor" class="form-control">
    <option ng-repeat="level in users  | filter: { accesslevel: 'Admin' }">{{level.userFirstName}}</option>
  </select>

{{level.userFirstName}

由于您将整个数据存储在用户对象范围内,因此您可以访问用户名和访问级别属性

在这个场景中,我看不到创建自定义过滤器的理由,因为这可以由Angular的智能过滤器表达式处理

如果您阅读AngularAPI,则可以在HTML模板绑定中使用过滤器

HTML模板绑定中的过滤器应该是expression、propertyKey或comparator。在您的情况下,只需将过滤器作为

 <option ng-repeat="level in users | filter:filterStarWith "{{level.userFirstName}}</option>

这里没有具体的问题细节,也没有简明的问题陈述。阅读后,用所有相关细节更新问题内容。
<option ng-repeat="level in users | filter: {accesslevel: 'Supervisor' }"> {{level.userFirstName}}</option>