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