ngAnimateがアプリケーションに注入されたときにng-ifまたはng-showでDOMから要素を削除すると、それ以外は発生しません。ngAnimateを使用している場合、ng-ifによる要素の削除が遅れる
Plunkr:https://plnkr.co/edit/rPTjsDCcgGpg6xfS0IVP
var app = angular.module('app', ['ngAnimate']);
ですが、なぜでしょう、と私はそれをどのように修正するのですか?
ngAnimateがアプリケーションに注入されたときにng-ifまたはng-showでDOMから要素を削除すると、それ以外は発生しません。ngAnimateを使用している場合、ng-ifによる要素の削除が遅れる
Plunkr:https://plnkr.co/edit/rPTjsDCcgGpg6xfS0IVP
var app = angular.module('app', ['ngAnimate']);
ですが、なぜでしょう、と私はそれをどのように修正するのですか?
これは問題を回避するためのハックですが、<div></div>
のボタンをラッパーのng-ifにラップするとすぐに読み込まれます。 https://plnkr.co/edit/PGZgrKzZHO7GSCkwfP23?p=preview
問題はsemantic.min.css
ファイルにあります。その行を削除すると、もはやちらつきが見えなくなります(もちろん、スタイリングもしません)。これは、semantic-uiがng-animateによって取得されているいくつかのトランジションを追加していることを意味します。
実際には、ui
クラスが問題を引き起こしているようです。そのクラスを削除すると、ちらつきも消えます(スタイリングと同様)。
これはそれだけではあまり役に立ちませんが、角度とセマンティックUIの交差点にある問題を指摘しています。
おそらく、問題の要素/クラスのどこかでCSSの遷移が起こっている可能性があります。 – Phil
私はあなたが含むsemantic.cssでこれが起こっていると確信しています。 –
ngAnimateが注入されていない場合は発生しません。 ngAnimateを削除すると、semantic-uiの有無にかかわらず期待どおりに機能することがわかります。 –