2016-05-31 4 views
0
<tbody ng-repeat= "course in year.courses"> 
    <tr ng-repeat="theCourse in vm.courses" ng-if="theCourse._id==course && theCourse.term==('VT2'||'VT1')"> 
      <td >{{theCourse.courseName}}</td> 
      <td >{{theCourse.courseCode}}</td> 
      <td >{{theCourse.term}}</td> 
      <td >{{theCourse.block}}</td> 
      <td >{{theCourse.credits}}</td> 

     </tr> 
</tbody> 

OR -условию не будет работать, я старался делать как выше, но и пытались так:нг-если с несколькими условиями не будут работать

<tr ng-if="theCourse._id==course && theCourse.term=='VT2'||theCourse.term=='VT1'"> 

Кто-нибудь знает, что я делаю неправильно ?

+0

'' year.courses' и vm.courses' разные? – WorkWe

+1

могут использоваться скобки '' – Miqe

+0

Это специально, так как они 2 разных баз данных, year.courses хранит курс в конкретном году, а vm.courses - это все курсы, Thats, почему у меня первое условие if. Две первые работы If-conditions, проблема в том, что последняя после || не. ('@ WorkWe – sacan

ответ

2

Оно должно быть:

<tr ng-if="theCourse._id === course && (theCourse.term === 'VT2'|| theCourse.term === 'VT1')"> 

Примечание: Вы должны использовать === для сравнения значений.

+0

Спасибо! Скобки решили проблему, но она по-прежнему работает только с двумя == – sacan

+1

Это предложение, потому что сравнивать с '==' (просто сравнить значение), сравнить с '===' (сравнить значение и тип) :) – WorkWe

0

могут быть использованы скобки

<tr ng-if="(theCourse._id==course && theCourse.term=='VT2')||theCourse.term=='VT1'"> 

я скопировал мой комментарий, просто чтобы сделать его в качестве ответа