Html AngularJS显示具有匹配值的索引的数据

Html AngularJS显示具有匹配值的索引的数据,html,angularjs,Html,Angularjs,我在一个仪表板上工作,试图显示某个数据段。在我的范围内,我有一个由几个字段和一组用户组成的项目。用户由以下字段组成: 用户id 用户名 用户电子邮件 角色 我想显示与某个值匹配的角色的用户名。有没有办法在我的html文件中执行此操作,或者建议在我的控制器中执行此操作 我的表代码如下所示: <tbody md-body> <tr md-row md-select="project" md-select-id="name" md-auto-select

我在一个仪表板上工作,试图显示某个数据段。在我的范围内,我有一个由几个字段和一组用户组成的项目。用户由以下字段组成:

  • 用户id
  • 用户名
  • 用户电子邮件
  • 角色
我想显示与某个值匹配的角色的用户名。有没有办法在我的html文件中执行此操作,或者建议在我的控制器中执行此操作

我的表代码如下所示:

<tbody md-body>
        <tr md-row md-select="project" md-select-id="name" md-auto-select
            ng-repeat="project in projects.data | orderBy : myOrder">
            <td md-cell ng-click="getProject()">{{project.title}}</td>
            <td md-cell><i class="material-icons" style="color: green">radio_button_checked</i></td>
            <td md-cell>{{project.phase}}</td>
            <td md-cell>{{project.budget_indication}}</td>
            <td md-cell>{{project.users}}</td> <!-- Display user with specific role -->
            <td md-cell>{{project.start_date | date:dd/MM/yyyy}}</td>
        </tr>
</tbody>

{{project.title}
单选按钮已选中
{{project.phase}
{{项目.预算}
{{project.users}
{{project.start_date}日期:dd/MM/yyyy}
提前谢谢


<tbody md-body>
        <tr md-row md-select="project" md-select-id="name" md-auto-select
            ng-repeat="project in projects.data | orderBy : myOrder"  ng-if="project.users === 'role'">
            <td md-cell ng-click="getProject()">{{project.title}}</td>
            <td md-cell><i class="material-icons" style="color: green">radio_button_checked</i></td>
            <td md-cell>{{project.phase}}</td>
            <td md-cell>{{project.budget_indication}}</td>
            <td md-cell>  {{project.users}} </td> <!-- Display user with specific role -->
            <td md-cell>{{project.start_date | date:dd/MM/yyyy}}</td>
        </tr>
</tbody>
{{project.title} 单选按钮已选中 {{project.phase} {{项目.预算} {{project.users} {{project.start_date}日期:dd/MM/yyyy}

假设角色是特定角色

如果
项目.data
包含具有角色属性(
项目.role
)的对象,则可以使用角度过滤器对该属性进行过滤,如下所示

Search by role: <input type="text" ng-model="roleSearch">

<tbody md-body>
        <tr md-row md-select="project" md-select-id="name" md-auto-select
            ng-repeat="project in projects.data | filter:{ role: roleSearch }| orderBy : myOrder">
            <td md-cell ng-click="getProject()">{{project.title}}</td>
            <td md-cell><i class="material-icons" style="color: green">radio_button_checked</i></td>
            <td md-cell>{{project.phase}}</td>
            <td md-cell>{{project.budget_indication}}</td>
            <td md-cell>{{project.users}}</td> <!-- Display user with specific role -->
            <td md-cell>{{project.start_date | date:dd/MM/yyyy}}</td>
        </tr>
</tbody>
要按用户进行筛选。请添加此筛选器

filter:{ users.role: roleSearch }

您可以使用
filter:role

{{x.users | filter:role=“User”}

这是一个我得到你的解决方案的例子


角色:{{Role?角色:'All Data'}}

{x.users |过滤器:role=role} var-app=angular.module(“myApp”,[]); app.controller(“myCtrl”,函数($scope){ $scope.projects=[{ 用户:[ { “姓名”:“阿尔弗雷德·富特基斯特”, “国家”:“德国”, “角色”:“用户” }, { “姓名”:“Berglunds snabbköp”, “国家”:“瑞典”, “角色”:“管理员” }, { “名称”:“商业中心Moctezuma”, “国家”:“墨西哥”, “角色”:“用户” }, { “名称”:“恩斯特·汉德尔”, “国家”:“奥地利”, “角色”:“管理员” } ] }] $scope.role=“用户” });
尝试为角色添加过滤器
|过滤器:角色
这似乎是一个很好的方法。然而,我想让它发生时自动加载页面。所以我可以添加一个默认角色搜索值。我的第二个问题是角色不直接在项目范围内,它可以在project.users[index]中找到。
filter:{ users.role: roleSearch }