警告:角の初心者が先行しています。AngularJSのカスタムディレクティブng-show/ng-hide
私はデフォルトで「返信」リンクを表示するカスタムウィジェットを作成しようとしています。クリックすると、非表示にしてテキストエリアが表示されるはずです。ここまでは私がこれまで行ってきたことですが、動作しません::
.directive('replybox', function ($rootScope) {
var linkFn = function (scope, element, attrs) {
var label = angular.element(element.children()[0]);
scope.showInput = false;
label.bind("click", textbox);
function textbox() {
scope.showInput = true;
}
};
return {
link:linkFn,
restrict:'E',
scope:{
id:'@',
label:'@',
showInput:'='
},
template:'<a ng-hide="showInput">label</a><textarea ng-show="showInput"> </textarea>',
transclude:true
};
})
いずれかのガイドラインが理解されます。ありがとう!
として変更の角度に通知するために$タイムアウトを使用してCA? – honzajde
@ user271996答えに完全な例が添付されたjsFiddleがあります。あなたはまだ何かが欠けていますか? –
リンク機能で手動で貼り付けるのではなく、テンプレートのng-clickでラベルクリック機能をバインドできます。 –