我想使用ng-if跳过ng-repeat中的项目

mah*_*244 6 javascript accordion angularjs angularjs-ng-repeat angular-ng-if

我试图在ng-repeat中使用ng-if来实现Accordions.根据条件值,ng-repeat应跳过ng-repeat中的一些项目.

例如,如果item.condition为true,则只显示accordion.下面的代码是我到目前为止,它没有工作.看起来不错吗?

     <accordion close-others="true">
          <accordion-group is-open="isopen" ng-repeat="item in items | limitTo:2" ng-if="item.condition == "true"",ng-init="isopen=2">
                  <accordion-heading>
          {{item.label}}
            <i class="pull-right glyphicon"
                         ng-class="{'icon-arrow-up': isopen, 'icon-arrow-down': !isopen}"></i>
                  </accordion-heading>
              </accordion-group>
          </accordion>
Run Code Online (Sandbox Code Playgroud)

Pan*_*kar 5

ng-if包含双倍的额外引号,它应该是ng-if="item.condition == true",也,从手风琴元素中删除

你也可以减少你的条件,ng-if="item.condition"这样的话表达会返回truefalseitem.condition变量的评价.

标记

<accordion close-others="true">
    <accordion-group is-open="isopen" ng-repeat="item in items | limitTo:2" 
       ng-if="item.condition" ng-init="isopen=2">
        <accordion-heading>
            {{item.label}}
            <i class="pull-right glyphicon" ng-class="{'icon-arrow-up': isopen, 'icon-arrow-down': !isopen}"></i>
        </accordion-heading>
    </accordion-group>
</accordion>
Run Code Online (Sandbox Code Playgroud)

  • 知道了,这是因为ng-if ="item.amenity =="false""中的额外"".谢谢 :-) (2认同)