即使条件为真,Angular1 ng-show也不显示跨度

时间:2017-05-12 14:32:19

标签: angularjs

我有一个手风琴名单如下:

<ion-list>
  <div ng-repeat="day in days"><br>
    <div class="item item-icon-left"  ng-click="toggleGroup(day)" ng-class="{active: isGroupShown(day)}">
      <i class="icon icon-accessory" ng-class="isGroupShown(day) ? 'ion-minus' : 'ion-plus'"></i>
      &nbsp;
      {{day.name}}
    </div>
    <a class="item item-icon-left item-accordion" ng-show="isGroupShown(day)" ng-repeat="exercise in day.exercises" type="item-text-wrap"
       href="#/tab/plan/{{exercise.id}}">
      {{exercise.name}}

      <!-- Trial LED -->

        <span ng-show="{{exercise.watchedToday}}==true" style="float:right;"><i class="ion-checkmark-round"></i></span>

    </a>
  </div>
</ion-list> 

在初始组件加载时,即使条件为真,即{{exercise.watchedToday}}==true,也不显示跨度。如果我将{{exercise.watchedToday}}放在span上方,则会显示true但不显示span。

当我点击链接&gt;一些其他组件加载&gt;如果我回来它是可见的。

为什么会这样?它是因为多种条件,即ng-repeat,ng-show?

1 个答案:

答案 0 :(得分:1)

删除var res = JSON.parse(JSON.stringify(src).split('null,').join('').split(',null').join('').split('null').join('')) 中的花括号。因为ng-show是一个角度指令,所以不需要使用大括号

ng-show