0

ng-repeatという文脈で、ng-styleng-disabledという奇妙な問題が発生しています。私は次のテンプレートを持っています...ng-repeatでbooleanがfalseであっても、ng-styleとng-disabledは最初はtrueと評価されますか?

 <li ng-repeat="value in currentFacet.values track by $index"> 
      {{ showAll }} 
      <input type="checkbox" ng-model="options[$index]" ng-true-value="'{{ value.label }}'" ng-checked="value.isActive" ng-disabled="showAll"/> 
      <span ng-style="showAll ? {color:'gray'} : {}">{{ value.label }}</span> 
     </li> 

これはチェックボックスのリストを生成します。 showAllブール値があり、これらのチェックボックスのすべてを無効にします。当初

ブールは私が(その{{ showAll }}がそこにある理由です)ブールの現在の状態を見たとき、それは偽だったにもかかわらず...本当だったかのようにng-styleng-disabledを評価するようだページがロードされます。

ブール値をtrueに変更してからfalseに戻すと、機能は正常に機能します。このudnesiredビヘイビアが発生するのは、最初のページロード時のみです。

+0

コントローラコードも共有できますか? –

+0

@NarenMuraliそれは無関係なはずですか? – Allenph

+0

とにかく問題を再現するサンプル変数がほしいだけでした。 –

答えて

1

showAllのタイプを一度確認してください。最初は文字列であると仮定しています。そのため、ロード時に状態が正常に動作します。 if( 'false')がtrueです。

関連する問題