AngularJS 过滤数组并显示 Angular View 中第一个对象的属性

标签 angularjs angular-filters

我正在尝试这样的事情。

<select  data-ng-model="modelName" 
    data-ng-options="item.id as (item.id + ' - ' +item.name) for item in options">
    <option value=''>Select</option>
</select>
{{options | filter:modelName}}

选项是一个对象数组。对象结构为{id:XYZ, name:ABC}。所以数组是

[{id:XYZ, name:ABC},{id:XYZ1, name:ABC1},{id:XYZ2, name:ABC2}]

对于上面的代码,我的输出是

{id:XYZ, name:ABC}

但我只想要“ABC

注意: 我知道我可以使用自定义过滤器。但有没有更好的方法呢?当然,对于这个小事情,我也不想创建任何指令。

最佳答案

您可以用括号将整个 Angular 表达式括起来并访问第一个项目的 name 属性。

<强> DEMO

{{ (options | filter:modelName)[0].name }}

关于AngularJS 过滤数组并显示 Angular View 中第一个对象的属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34217230/

相关文章:

javascript - 单击任何按钮都会触发我的 UserService.getUsers 函数,但这不应该发生

angularjs - Angular 中的日期对象

AngularJS : Custom filters and ng-repeat

javascript - 在 Angular js 1.6.2 中使用自定义过滤器

javascript - 函数 Javascript 中的预期问题

javascript - 在 Ionic Framework (AngularJS) 中保存应用程序设置

javascript - PokeAPI + Angular : How to get pokemon's evolution chain

angularjs - 无法在字符串上创建属性 'type' - 单选按钮过滤器

angularjs - 为什么AngularJS过滤器在ng-if中不起作用?

angularjs - 根据选择值过滤 angularjs 中的结果