gpt4 book ai didi

javascript - 使用 ng-model-optios getterSetter 时无法输入无效的 View 值

转载 作者:行者123 更新时间:2023-11-30 15:56:16 25 4
gpt4 key购买 nike

如果我使用 ng-model-optiongetterSetter 进行表单验证,那么我不能在输入中输入任何无效内容。例如

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 时相同的行为。即:用户可以在 View 中输入任何无效输入,但只有在输入有效时才会设置模型。

任何人都知道我可以使用 getterSetter 进行表单验证的解决方法,或者任何人都可以解释为什么会这样吗?

最佳答案

发生这种情况是因为传递给您的 setter 的 value 可能是 undefined,诱使您的 getterSetter 将“setter”调用作为“getter”调用来处理。

将您的条件从 value !== undefined 更改为 arguments.length 将解决您的问题:Updated plnkr

关于javascript - 使用 ng-model-optios getterSetter 时无法输入无效的 View 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38484271/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com