问题标签 [angular-validator]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
105 浏览

angular - Angular 自定义验证器错误组已弃用:此 API 不是类型安全的

我有这个警告

group 已弃用:此 API 不是类型安全的,可能会导致 Closure Compiler 重命名问题。改用FormBuilder#group重载AbstractControlOptions。请注意, AbstractControlOptions期望validatorsasyncValidators成为验证者。如果您有自定义验证器,请确保它们的验证函数参数是AbstractControl而不是子类,例如FormGroup. 这些函数将使用类型对象调用,AbstractControl并且不能自动向下转换为子类,因此 TypeScript 将此视为错误。例如,将(group: FormGroup) => ValidationErrors|null 签名更改为(group: AbstractControl) => ValidationErrors|null.

如何修复此代码?

0 投票
2 回答
72 浏览

javascript - 无法设置角度异步验证器

我按照文档创建了以下角度异步验证器类:

然后我尝试以这种方式以编程方式将其附加到表单控件:

将“UniqueXValidator”悬停在第二段代码中时,我收到以下错误消息,显示为 vs 代码的工具提示:

编辑:这可能是我的角度版本(7)和文档(11)之间的兼容性问题

0 投票
3 回答
985 浏览

angular - 如何修复 Angular 12 中的 Ngx-custom-validator?

我在我的项目(Angular 11)中安装了一个包“ngx-custom-validator”,它工作正常。

将项目升级到 Angular 12 后,现在我面临“ngx-custom-validator”的问题

以下错误:

我想最近使用这个包的开发者也有这个问题,如果有任何解决方案请分享。

预先感谢

0 投票
1 回答
69 浏览

angular - angular2 formGroup 的唯一值验证器

我正在使用角度反应式 formsGroup 和 formControl。我的要求是每个 formControl 的值应该是唯一的,如果用户尝试添加重复值,那么它应该显示验证错误。

表单组创建

如果有人尝试编辑其他国家/地区已采用的值,我想添加验证。

在此处输入图像描述

我试图实现 this.uniqueValidator

但它不起作用

任何帮助表示赞赏

0 投票
1 回答
63 浏览

angular - Angular 上的间接条件要求验证(嵌套属性)

我正在检查这个问题及其答案以便发布。

我跳过了填充 observable 的代码typeCodes$

如您所见,conditionalValidator方法的使用很简单!!!。

但是,我有一个包含一个枚举的接口

在我的 HTML 中,我将 aSelect与之前的 observable 一起使用typeCodes$

现在我有一个复杂的情况,在我的 HTML 中,当Select(或idTypeCode)对应于一个TypeCodeDto等于codeEnumSecond需要应用:

如何实施?

0 投票
0 回答
38 浏览

angular - 角度显示错误为 FormControl 错误,在与 FormGroup 无关的简单输入上

假设我需要在我的 Angular 项目中使用 External(我无法更改或使用其他)ChildComponent,该项目将在 other 中使用ParentComponent

ChildComponent不实现ControlValueAccessorValidator接口。

但我需要使用Validation,但我无法将它与本地人联系起来FormControlFormBuilder例如:

在我的 HTML 中,它应该类似于:

但是,我不能像以前一样使用formControlName="childComp"[required]="formGroup.controls.childComp.invalid"

因此,在我的 HTML 模板中,我只能使用:

如何将验证器的行为ChildComponent添加到添加到表单中的控件的外部?

如果我有一个提交按钮:

由于缺乏验证合规性,是否可以禁用该按钮?

或者,如果无法禁用按钮,是否可以在 Modal 组件(.ts文件)上完成?

单击按钮后如何验证(显示错误消息)?

编辑:我正在阅读这个 ⁷<a href="https://stackoverflow.com/a/46369930/811293">问题及其答案,但与已添加到FormGroup. 这是一个不同的情况。

0 投票
1 回答
292 浏览

angular - 角反应形式,动态验证器不更新控制有效性

所以我有一个表单,只有当另一个控件有值时才需要一个控件,为此我创建了以下结构

});

这个函数很好用,一旦username 控件得到一个值,aValidators.required就会被添加到address控件中。但是,尽管添加了验证器,但address控件的有效性不会更新,因此控件仍标记为valid.

如果可能的话,我想避免使用类似的东西

因为可能存在我不知道名称的动态控件,并且不想为每个控件设置一个可观察的。

这是一个工作示例的堆栈闪电战 https://stackblitz.com/edit/angular-10-formbuilder-example-m8qjq8?file=src/app/app.component.ts

0 投票
0 回答
36 浏览

javascript - 发送 Json 文件进行异步验证

我正在使用 Angular 反应式表单和异步验证,而不是正常值,我想发送 Json 文件进行验证。

我的表格看起来像

我的 HTML 文件看起来像

文件更改方法就像

异步验证器是

和服务

问题是当我上传文件时,异步验证器不会被触发,我想随请求一起发送文件。

有任何想法吗?