Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/476.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript AngularJS ngOptions搜索过滤器-删除重复的选择选项_Javascript_Angularjs - Fatal编程技术网

Javascript AngularJS ngOptions搜索过滤器-删除重复的选择选项

Javascript AngularJS ngOptions搜索过滤器-删除重复的选择选项,javascript,angularjs,Javascript,Angularjs,我有一个非规范化的api,它返回以下非规范化的产品集合 id name type product_type_id country product_country_id created_at updated_at 我可以使用ngRepeat在表格中显示所有结果。我创建了一个选择过滤器,根据产品类型筛选出产品 问题是在我的集合中,type列不是唯一的 我的选择过滤器: <select class="form-control" data-ng-model="search.pro

我有一个非规范化的api,它返回以下非规范化的产品集合

id
name
type
product_type_id
country
product_country_id
created_at
updated_at
我可以使用ngRepeat在表格中显示所有结果。我创建了一个选择过滤器,根据产品类型筛选出产品

问题是在我的集合中,type列不是唯一的

我的选择过滤器:

<select
    class="form-control"
    data-ng-model="search.product_type_id"
    data-ng-options="product.product_type_id as product.type for product in products">
    <option value="">Filter Product Types</option>
</select>

过滤器产品类型
我的桌子在重复:

<tr data-ng-repeat="product in products | filter : { search : '!null'}">
    <td><% product.type %></td>
    <td><% product.country %></td>
    <td><% product.name %></td>
    <td class="hidden-xs"><% product.created_at %></td>
    <td class="hidden-xs"><% product.updated_at %></td>
    <td>Actions</td>
</tr>

行动

是否有只显示唯一产品的快捷方式。请键入产品?

您可以使用angular ui的唯一过滤器,您可以按自己的意愿进行操作

你可以读到它

然后像这样使用它:

<select
    class="form-control"
    data-ng-model="search.product_type_id"
    data-ng-options="product.product_type_id as product.type for product in products | unique:'type'">
    <option value="">Filter Product Types</option>
</select>

过滤器产品类型