私は、属性がif-login-service="facebook"
の要素が作成されるが、この属性には他の値を持つ要素は作成されないようなディレクティブを作成しようとしています。コンテンツを条件付きで作成するangleディレクティブ
私がこれまで
app.directive('ifLoginService', function($compile) {
return {
restrict: 'EA',
compile: function compile(element, attrs) {
return function($scope, $element, $attr) {
var serviceName = attrs.ifLoginService;
if (serviceName === 'facebook') {
// use compile to include and compile your content here
$compile($element.contents())($scope);
}
}
}
};
});
A Plunker demo下に表示され、このディレクティブで作った進歩がここにあります。それが機能していた場合は、「Facebook」ボタンが表示され、「Facebookではない」ボタンは表示されません。現在、両方のボタンが表示されていますが、どこが間違っているのか分かりません。
[source of ngIf](https://github.com/angular/angular.js/blob/master/src/ng/directive/ngIf.js)を見るか、ngあなたのディレクティブテンプレートに – yoavmatchulsky
@yoavmatchulskyあなたが私のディレクティブテンプレートで 'ng-if'をどのように使用できるかを表示できますか? –
[this](https://gist.github.com/yoavmatchulsky/aed5d49ca26c2f747ccc5632222941fe)のようなものです。ボタン要素はまだ存在することに注意してください。それは理想的ではないので、私はこれを答えとして書いていませんでした。 – yoavmatchulsky