角を使用する1.5角型バリデータの評価順序を制御するにはどうすればよいですか?
私は、ディレクティブが起動されたときに角型バリデーターがフィールドに追加されることを理解しています。私は量フィールドの3つの異なるバリデーションを持っています(正しい文字、最大の長さ、ゼロにすることはできません)。フィールドが有効な金額ではない場合は0と評価する必要はありませんが、有効な金額のチェックを2回目に通過する代わりに、確認したい場合はcontrol.$validator.amountFormat.
保証がありますか私が構築したフォーマットバリデータは、0より大きいバリデータの前に発生します。私はこれ以外の多くのシナリオを持っています。
これは私が持っているものです。
ctrl.$validators.amountFormat = (modelValue: string, viewValue: string) => {
if (ctrl.$isEmpty(viewValue)) {
return true;
}
return isAmount(viewValue);
}
ctrl.$validators.amountGreaterThanZero = (modelValue: string, viewValue: string) => {
if (!isAmount(viewValue)) { //isAmount() is the function used to determine format
return true;
}
return parseFloat(viewValue) > 0;
}
これは私が持っているしたいものです。
ctrl.$validators.amountGreaterThanZero = (modelValue: string, viewValue: string) => {
if (ctrl.$error.amountFormat) {
return true;
}
return parseFloat(viewValue) > 0;
}