Angular 金额字段的正式验证无效
Angular formly validation for amount field is not working
我正在尝试使用 formly 模板和验证器显示消息。
模板有:
<div ng-message="required">This field is required</div>
<div ng-message="amountValid">Please enter valid amount</div>
并使用 formly,我正在调用验证器来设置此消息。
需要的消息使用 templateOption 工作正常 - 需要。
如果对验证器进行内联验证,则无法验证正确的条件。当我开始输入任何随机值时它只是显示错误。
你能帮忙吗?谢谢
"templateOptions": {
required: true
},
validators: {
amountValid: '$viewValue > availableAmount'
}
注意:availableAmount 正在从服务中填充。我也尝试在验证器中给出消息但没有成功。
输入元素的 $viewValue
是一个字符串,而您的 availableAmount
很可能是整数。在比较之前尝试将 $viewValue
解析为 int:parseInt($viewValue) > availableAmount
我能够使用验证器解决这个问题,如下所示
validators: {
amountInvalid: function($viewValue, $modelValue, scope) {
var disAmountValue = $modelValue || $viewValue;
return (disAmountValue <= txnAmount);
}
我正在尝试使用 formly 模板和验证器显示消息。
模板有:
<div ng-message="required">This field is required</div>
<div ng-message="amountValid">Please enter valid amount</div>
并使用 formly,我正在调用验证器来设置此消息。
需要的消息使用 templateOption 工作正常 - 需要。
如果对验证器进行内联验证,则无法验证正确的条件。当我开始输入任何随机值时它只是显示错误。
你能帮忙吗?谢谢
"templateOptions": {
required: true
},
validators: {
amountValid: '$viewValue > availableAmount'
}
注意:availableAmount 正在从服务中填充。我也尝试在验证器中给出消息但没有成功。
$viewValue
是一个字符串,而您的 availableAmount
很可能是整数。在比较之前尝试将 $viewValue
解析为 int:parseInt($viewValue) > availableAmount
我能够使用验证器解决这个问题,如下所示
validators: {
amountInvalid: function($viewValue, $modelValue, scope) {
var disAmountValue = $modelValue || $viewValue;
return (disAmountValue <= txnAmount);
}