在ng-repeat中的ngIf会出错

时间:2013-10-28 15:30:25

标签: angularjs angularjs-ng-repeat

这是我的代码的简化概念。 $scope.events是一个多维数组,我的HTML是:

<div ng-repeat="event in events" >
   {{event.owner_id.$oid}} //renders the $oid
   <div ng-if="event.owner_id.$oid == 20">
      Code to be rendered if true
   </div>
</div>

但是我从angular获得了以下错误:

Error: [$parse:syntax] http://errors.angularjs.org/undefined/$parse/syntax?p0=a02c36b440519dc1aa6&p1=is%20an%20unexpected%20token&p2=30&p3=event.owner_id."<!-- ngIf: event.owner_id.$oid ==  52408a02c36b440519dc1aa6 -->"id%20%3D%3D%20%2052408a02c36b440519dc1aa6&p4=a02c36b440519dc1aa6

我该如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

由于@gonzalo在评论中提出这个问题,我写下来了:

<div ng-if="event.owner_id.$oid == {{user_id}} "> 
如果user_id为20,

就可以了。

但请使用:

<div ng-if="event.owner_id.$oid == '{{user_id}}' "> 

如果user_id不是整数。

Angularjs尝试解析没有引号的字符串。