Angular2,RC5:不在下拉列表中添加重复值

时间:2016-09-05 18:35:46

标签: angular

我从远程服务器获取测试值,可以复制GroupID值,但我希望我的下拉列表显示没有重复的值, 我尝试了以下代码,但无效

<th>
<select class="form-control" (change)="reloadPosts({ GroupID: u.value })" #u>
<option value="">Select group id...</option>
<template *ngFor="let test of tests"> <option *ngIf="!test" value="{{ test.GroupID }}">
{{ test.GroupID }}
</option></template>
</select>
</th>   

如何使用角度rc5及以上

进行此操作

感谢

2 个答案:

答案 0 :(得分:0)

你应该可以用一个简单的管道来做到这一点......

@Pipe({ name: 'unique', pure: false })

export class UniquePipe implements PipeTransform {
    transform(value: any, args: any[] = null): any {
        return _.uniq(value);
    }
}

然后在你的html中使用*ngFor="let test of tests | unique"

管道示例使用underscore.js,但您可以随意编写过滤器。

有关pipes的更多信息。

答案 1 :(得分:0)

我无法用管道解决这个问题,所以我修改了我的组件代码, 看到: Angular2, create new array/map