1

knockout.jsを使用して、この問題に何度か遭遇しました。1行の単一の属性のみを変更する単純なifステートメントに対して多くの繰り返しを行っているようです。

<!-- ko foreach: $data.content -->
    <!-- ko if: $index() === 0 -->
        <div class='tab-pane active'>
    <!-- /ko -->
    <!-- ko if: $index() !== 0 -->
        <div class='tab-pane'>
    <!-- /ko -->
<!-- /ko -->

この例は単純なデモンストレーションですが、問題ははるかに複雑な行で発生するため、明らかにバグの影響を受けやすくなっています。

ノックアウトは、このコードの繰り返しを回避する他の方法はありますか

4

1 に答える 1

1

バインディングを使用cssしてcssクラスを追加できます。

<!-- ko foreach: $data.content -->
   <div class='tab-pane' data-bind="css: {active: $index() === 0 } "></div>
<!-- /ko -->
于 2012-09-04T09:25:54.723 に答える