DOMのいくつかの要素を制御するためのディレクティブをユーザーの権限に従って作成しようとしています。インターネットで探して、私は要素のために.remove()
関数を見つけました。それは素晴らしい仕事です。AngularJS - 自己削除/挿入への指示
しかし、権限が変更された場合は、DOM要素を再度表示する必要があります。 .remove()
に電話した後、どうすればいいですか?ここ
は私のコードです:
ddo.link = function(scope, el, attrs){
// Validate the permission
if(currentUserService.isAllowed(scope.validatePermission) !== true) {
el.remove();
}
// Listener for changes
$rootScope.$on("eventName", function(event, param){
// Validate the permission
if(currentUserService.isAllowed(scope.validatePermission) !== true) {
el.remove();
} else {
// SHOW THE ELEMENT AGAIN!
}
});
};
または、デHTMLを削除して、再び挿入するが、別の方法ですか? CSSを使用すると、デベロッパーコンソールから無効にすることができます...
ありがとうございます!
と比較されますか?それが契約の中断者なら、ng-ifのコードを見て、それがどのように機能するかを見てみましょう。 –
現在のユーザーが頻繁に変更するユースケースは何ですか?ユーザーが変更したときにcurrentStateをリロードするだけで十分です。私は、rootScopeにリスナーを追加することを非常に躊躇します。 –
Mike Feltmanが注目してくれてありがとう!アクセス許可はリンクの後に読み込まれるので、私はこの更新の可能性が必要なので、私は指示の展示を更新する必要があります。 – LeonardoGuimaraes