我創(chuàng)建了一個父組件,如下所示:<form [formGroup] = "cardForm"><app-inputvalidator [controls] = "cardForm.get('name')"></app-inputvalidator> </form>父 ts 文件import { Component, OnInit } from '@angular/core';import { FormGroup, FormControl,Validators } from '@angular/forms';@Component({ selector: 'app-card-form', templateUrl: './card-form.component.html', styleUrls: ['./card-form.component.css']})export class CardFormComponent implements OnInit { nameFormControl ; cardForm = new FormGroup({ name: new FormControl('', [Validators.minLength(5),Validators.maxLength(25)]) }); constructor() { } ngOnInit(): void { this.nameFormControl = this.cardForm.get('name'); }}我將 nameFormControls 傳遞給子組件并在模板和類中訪問它,如下所示:輸入驗證器.ts import { Component, OnInit, Input } from '@angular/core'; import { FormControl} from '@angular/forms'; @Component({ selector: 'app-inputvalidator', templateUrl: './inputvalidator.component.html', styleUrls: ['./inputvalidator.component.css']}) export class InputvalidatorComponent implements OnInit { @Input() controls: FormControl; constructor() { } ngOnInit(): void { }}輸入驗證器.html <input [formControlName] = "controls" <br> <div>{{ controls.errors | json}}</div> 該項目已成功編譯,沒有錯誤。我將controls.errors 的值設(shè)置為始終為空。為什么當名稱輸入框中的值發(fā)生變化時,無法使用字符串插值打印對象controls.errors?
1 回答

互換的青春
TA貢獻1797條經(jīng)驗 獲得超6個贊
你得到 null 因為你沒有放置必需的驗證器,如果有值并且該值無效,則min,maxLength驗證器將返回錯誤,如果該值為 null 或空字符串,這將被視為有效
- 1 回答
- 0 關(guān)注
- 107 瀏覽
添加回答
舉報
0/150
提交
取消