AngularJs过滤如何做“等于”而不是“开始”

时间:2014-08-11 04:37:56

标签: angularjs angularjs-directive angularjs-ng-repeat

我是AngularJs的新手,我想在每个类别下显示类别和产品。

该产品有一个外键category_id,指的是其类别。

我尝试过这些方法:

1.
      <tr ng-repeat="q in questions | filter: question_category_id == qc.id : true">

2. 
      <tr ng-repeat="q in questions | filter: question_category_id: question_category_id == qc.id : true">

3. 
      <tr ng-repeat="q in questions | filter: question_category_id == qc.id : true">

4. 
      <tr ng-repeat="q in questions | filter: {question_category_id: qc.id}">

它们都没有正常工作。

第四种方式是最接近的,但它显示如下:

category 1
  question1  (question_category_id = 1)
  question2  (question_category_id = 1)
  question3  (question_category_id = 10)

这就是为什么我认为过滤器正在做的事情&#34; start-with&#34;工作,而不是&#34;等于&#34;工作

请帮忙,非常感谢

1 个答案:

答案 0 :(得分:1)

filter使用第三个参数来指定比较器。使用true进行严格的等于比较(默认情况下,它会进行子字符串匹配,这是您正在看到的内容)...

<tr ng-repeat="q in questions | filter: {question_category_id: qc.id} : true">