Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/28.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angular 如何获取表单输入的Validators.minLength并在html中动态设置它?_Angular_Typescript_Angular9 - Fatal编程技术网

Angular 如何获取表单输入的Validators.minLength并在html中动态设置它?

Angular 如何获取表单输入的Validators.minLength并在html中动态设置它?,angular,typescript,angular9,Angular,Typescript,Angular9,我在angular中有一个表单,我想在html输入标记中使用表单“Validators.minLength”的值 我想知道是否有任何方法可以直接使用html中的表单验证程序 样本: [maxLength]=“form.get('zipCode')。验证器('maxLength)” 我的ts代码是: zipCode: [ '', [ Validators.required, Validators.maxLeng

我在angular中有一个表单,我想在html输入标记中使用表单“Validators.minLength”的值

我想知道是否有任何方法可以直接使用html中的表单验证程序

样本: [maxLength]=“form.get('zipCode')。验证器('maxLength)”

我的ts代码是:

            zipCode: [ '', [
                Validators.required,
                Validators.maxLength(10),
                number,
            ],
html是:

                        <input type="tel"
                               formControlName="zipCode"
                               [maxLength]="10"  // here I want insert dynamic number from ts file
                               placeholder="insert your zip code">

感谢您的帮助。

TS

this.maxLength=10;
zipCode: [ '', [
                Validators.required,
                Validators.maxLength(this.maxLength),
                number,
            ],
HTML


TS:

HTML:



这应该足够了。

对于你的答案,我想知道的是一种在输入标记中添加maxlength值的方法,示例:[maxlength]=“form.get('zipCode').maxlength”??你可以将[maxlength]绑定到这样的变量[maxlength]=“maxlength”,但我没有理解要点,两者都是一样的,对吗?是的,这是真的,但我有许多字段与此相同,它不适合用于metanks作为您的答案,我想知道是否有任何方法可以直接从html中的表单验证程序使用;示例:[maxLength]=“form.get('zipCode')。validators('maxLength')”这样做很糟糕。请记住,根据官方文档,如果在html输入中使用
maxlength
,基本上angular已经将其转换为表单验证程序了。这意味着,如果您在输入时使用
maxlength
,则不必使用验证器。
<input type="tel" formControlName="zipCode" placeholder="insert your zip code">
public maxZipCodeLength: number = 10;
<input type="tel" formControlName="zipCode" [maxlength]="maxZipCodeLength" />