2

divいくつかの s (3+ ng-repeats 未満) を条件付きで表示し、カウンター変数 which をインクリメントしようとしています。カウンターは、div の可視性を決定する条件に貢献します。

次のようなことng-show='foo++ < SOME_LIMIT'をすると、構文エラーが発生します。

Error: Syntax Error: Token 'undefined' not a primary expression at column NaN of the expression [moveItem.type != 'account' && team.rowCount++] starting at [moveItem.type != 'account' && team.rowCount++].

また

Error: Syntax Error: Token '2' is an unexpected token at column 42 of the expression [team.expandAccounts || team.rowCount++ < 2] starting at [2]

コードを提供する必要はないようですが、それでも私が試していたことを提供しています。次のようなことを試しました:

<div ng-repeat='request in pagedRequests'
  <tr ng-repeat='(fooId, foo) in returnFoos(request)'>
    <td ng-init='foo.rowCount = 0'>
      {{foo.someAttribute}}
      <!--Here is just an icon shown when the rowCount reaches some limit, say 3.
          Uses ng-switch on foo.rowCount. Skipping this as this doesn't seem
          problematic. This toggles rows' collapsing using foo.expandRows.-->
      <div ng-repeat='bar in foo.bars'
           ng-show='foo.rowCount < 3 || foo.expandRows'>
        <span ng-show='bar.type=="multiRowBar"'
              ng-repeat='row in bar.rows'>
          <span ng-show="foo.expandRows || foo.rowCount++ < 3"> <!--SYNTAX ERROR!-->
            <!--Showing the nested objects with more ng-repeats.-->
        </span>
        <span ng-show='bar.type!="multiRowBar" && foo.rowCount++<3'>  <!--SYNTAX ERROR!-->
          <!-- This adds a single row per bar of this type.-->
        </span>
      </div>
    </td>
  </tr>
</div>

++角度式内でポスト/プリインクリメント/デクリメント演算子( など)を使用できないということですか?

4

2 に答える 2

2

次のような方法を使用しないのはなぜですか:

<button ng-show='increaseFoo() < SOME_LIMIT'>press  me</button>

コントローラ

$scope.SOME_LIMIT = 10;     
$scope.foo = 8; 

$scope.increaseFoo = function(){
    return $scope.foo++;
};    

Fiddle

の場合$scope.foo = 8;ng-show戻りますtrue

の場合$scope.foo = 9;ng-show戻りますfalse

于 2013-09-20T09:15:38.617 に答える
1

$digest質問は、そのような努力が中断する周期的な呼び出しを引き起こすという事実に少し無知です。(この質問から何らかの意味を理解するために、私は私の解決策を提供しています。誰かがこのことを試しているのに役立つことを願っています)私が完成させた解決策は、すべてのリストを単一のリストにフラット化しswitch、の特定の値$index

于 2013-11-12T09:26:35.627 に答える