2016-05-07 2 views
0

私は、CSSがdisplay: none;のクラスのdivを持っています。ボタンをクリックすると、クラスを持つクラスがng-class="vm.showing ? 'zoomIn' : 'zoomOut'"のトグルに変更されます。問題は、スタイルがdisplay: none;に設定されているときに、angleがng-repeat要素を設定していないように見えることです。親のCSSが表示するように設定されている場合、ng-repeatは機能しません:なし

編集私は実際にコードがng-class="vm.showing ? 'zoomIn' : 'zoomOut'

更新されたコードとなり、animate.cssを使用したい:

<button ng-click="vm.showing = true" type="button">View Panel</button> 

<div ng-class="vm.showing ? 'zoomIn' : 'zoomOut'"> 
    <button ng-click="vm.showing = false" type="button">Close Panel</button> 
    <div ng-repeat="item in vm.items"> 
     ... 
    </div> 
</div> 

旧コード - 無視どのよう

<button ng-click="vm.showing = true" type="button">View Panel</button> 

<div ng-class="vm.showing ? '' : 'display-none'"> 
    <button ng-click="vm.showing = false" type="button">Close Panel</button> 
    <div ng-repeat="item in vm.items"> 
     ... 
    </div> 
</div> 

この作業を適切に行い、ng-repeat指令popu繰り返される要素は?

+0

は、あなたの質問には、意味がありませんフィドル –

+0

を追加してください使用の一部でない限り、あなたの 'zoomIn'や' zoomOut'クラスは '使用しているディスプレイ:なし。 '。そしてdivが実際に 'display:none;'に設定されている場合、それは正常であり、内部に入れ子にされた繰り返しのために受け入れられません。なぜ表示されないDOMツリーに値を設定したいのですか? – Claies

+0

@RIYAJKHAN私はplunkrを作ったが、それはうまくいき、私が取り組んでいる実際のコードで開発ツールを開いた。それは角の二倍のエラーだった –

答えて

0

角度を使用すると、表示の代わりに使用する必要がありますng-showng-hideディレクティブを提供します:なし:それはそのためだけに使用して価値があるので

<div ng-show="vm.showing"> 
<button ng-click="vm.showing = false" type="button">Close Panel</button> 
<div ng-repeat="item in vm.items"> 
    ... 
</div> 

NG-ショーはあなたに多くのクリーンな構文を提供します。

私の推測では、従来のdisplay: noneメソッドはパフォーマンスの最適化のために機能しません。あなたはAngularに、そのブロックが隠されているためレンダリングする必要がないことを伝えています。あなたはそれを見えるようにしますが、CSSで起こっているので、Angularは更新が必要であることを知らない。

Quick tutorial詳細については、

0

<button ng-click="vm.showing = true" type="button">View Panel</button> 

<div ng-show="vm.showing"> 
    <button ng-click="vm.showing = false" type="button">Close Panel</button> 
    <div ng-repeat="item in vm.items"> 
     ... 
    </div> 
</div> 

今すぐanimate.css

関連する問題