我有一系列产品,我正在重复使用ng-repeat和我正在使用
<div ng-repeat="product in products | filter:by_colour">
Run Code Online (Sandbox Code Playgroud)
用颜色过滤这些产品.过滤器正在运行,但如果产品名称/描述等包含颜色,则在应用过滤器后产品仍然存在.
如何将过滤器设置为仅应用于数组的颜色字段而不是每个字段?
我需要按类别过滤项目列表.我希望用户能够单击按钮,然后将过滤器应用于列表.
目前,我的工作达到了一定程度.
比方说,我有一个电影列表,如下所示:
<li ng-repeat="movie in movieList | filter:filters">{{ movie.title }}</li>
Run Code Online (Sandbox Code Playgroud)
我还有一个电影类型列表(呈现为按钮,点击时会过滤电影列表),如下所示:
<li ng-repeat="genre in genres">
<a ng-click="filters.genre = genre.name" ng-click='changeGenre(genre.name)'>{{genre.name}}</a>
</li>
Run Code Online (Sandbox Code Playgroud)
(所有'changeGenre()'函数都会更新范围以显示当前正在查看的类型).
现在这个工作很好,直到我遇到这样的情况,比如我有两种类型:'动作'和'动作冒险'.当我使用"动作"类型的电影进行过滤时,我不仅会获得动作电影列表,还会获得动作冒险电影.
有没有办法可以使用过滤器获得完全匹配?