状況:
angular アプリには多くのフォームがあり、効果的なエラー メッセージ システムが必要です。ngMessages は便利だと思います。
しかし、「積極的」でないようにするために、ユーザーがフィールドからぼやけたときにのみエラーメッセージが表示されるようにしたいと思います。
試み:
1000 ミリ秒でデバウンスを使用してみる
<label class="item item-input">
<span class="input-label"> Email alternative </span>
<input type="email" name="email_alternative" ng-model="profile_edited.email2" ng-model-options="{ debounce: 1000 }">
</label>
<!-- Error messages for ALTERNATIVE EMAIL -->
<label class="item item-input" ng-show="profile_edit_form.email_alternative.$error.email">
<div class="form-errors" ng-messages="profile_edit_form.email_alternative.$error" role="alert" ng-if='profile_edit_form.email_alternative.$dirty'>
<div class="form-error" ng-message="email">Your email address is invalid</div>
</div>
</label>
このようにして、ユーザーが 1 秒間何も入力しないと、エラー メッセージが適切に表示されます。私が望むものに最も近いものです。
ただし、一部のユーザーにとっては、文字 @ を入力するのに 1 秒以上かかる場合があります。エラーメッセージが突然表示され、ユーザーを混乱させる可能性があります。
しかし、デバウンス時間を 2 秒または 3 秒に設定すると、多すぎます。ユーザーがすでに別のフィールドに書き込みを行っている場合に表示されることがあります。
エラーメッセージは、ユーザーがフィールドからぼやけた後にのみ発生する必要があります。
質問:
ぼかしでngMessagesを起動するにはどうすればよいですか?