私のディレクティブを強制的に再レンダリングするには
テンプレート
<div ng-if="showDirective">
<my-directive attr="value"></my-directive>
</div>
<button ng-click="toggleDirective()">Toggle</button>
コントローラ
$scope.showDirective = true
$scope.toggleDirective = function() {
$scope.showDirective = !$scope.showDirective;
}
データをフェッチしてng-repeatをループするディレクティブにajaxリクエストがあります。
ページ読み込み時の初めてのディレクティブロード。 最初にトグルボタンをクリックすると、ディレクティブが非表示になります。トグルを再度クリックすると、キャッシュからロードされます。または、前のDOMがレンダリングされます。どのように私はいつまでもその命令を再レンダリングする必要があります。
回答:
回答№1は0再コンパイルマークアップは、それを再レンダリングする唯一のチャンスです....
しかし、なぜあなたはそれをしますか?たぶんng-repeatであなたのリストを更新すれば十分でしょうか? AngularJSはリスト自体を変更して再表示しますが、手作業による再登録は必要ありません。