ScenraioAngular - ng-clickハンドラスコープ機能の後にangleディレクティブをトリガする方法?
私はAngularにはかなり新しく、次の問題があります。
色を変更してボタンに画像を追加するよう指示を出したい。私はAngular Directiveでこの変更を引き起こす最初のif条件を得ることができません。
私はNG-クリックハンドラからの結果に基づいて指示テイクアクションを作りたい
問題。私のデバッガは、ディレクティブが呼び出されていることを示していますが、私は最初のif条件を入力していません。
質問
1)私はこの作業を取得するために行うには何が必要ですか?
2)ディレクティブを処理する前にng-clickが呼び出されていないかどうかを検討する必要がありますか?
HTML
<button class="email-reset-btn" type="button" ng-click="resetEmailLink();" emailReset="changeBtn();" name="button">Email Reset Link</button>
スコープレベル機能
var emailResetValidation = function() {
if($('#email').val().trim() == "")
{
$(".email-reset-btn").removeClass("email-active-green");
}
}
指令
.directive('emailReset', [function(){
return {
link: function(scope, elem, attrs) {
elem.bind("click", function(){
if(!elem.hasClass('email-active-green')) { <--- Here is where I want the debugger to enter to change the button's HTML
elem.html("<div class='email-sent-placeholder'><img width='15px' src='./resources/icons/[email protected]'/></div> <div class='email-reset-button-text'>Link Sent</div>");
}
else {
elem.html("Email Reset Link");
}
})
}
});
を見てみては? –
#emailはidが "email"のテキスト入力です。 – Vahe
各ボタンが表示されるときに論理を取得できません。また、スコープモデルのチェックとして最も基本的なこととして、angularjsとjQueryを混在させています。私はplunkrを追加しました。これはQIからのフォークです。あなたはanglejsをすごく小さくする小さな変更を見ることができましたか?https://plnkr.co/edit/2fq3ndcN0XbOtiBDV4Kx?p=preview –