フォーム検証でを使用している場合ng-model-option
、getterSetter
入力に無効なものを入力することはできません。例えば
HTML
<input type="number" ng-model-options="{getterSetter: true}" ng-model="ctrl.myVal" min="10">
JS
this.myVal = function(value) {
if (value !== undefined) {
this.actualVal = value;
} else {
return this.actualVal;
}
};
https://plnkr.co/edit/dUPXiD1elGfqZSf9x9Bk?p=preview
その入力では、10未満になるため、数字を入力できません。
なしで得られるのと同じ動作を取得しようとしていgetterSetter
ます。つまり、ユーザーはビューに無効な入力を入力できますが、モデルは入力が有効な場合にのみ設定されます。
フォーム検証を使用して動作させるための回避策を知っている人はいますか、getterSetter
それともなぜこれが起こっているのか説明できますか?