addControl() 在 Angular 2 中抛出 "not a function" 错误
addControl() throwing "not a function" error in Angular 2
我创建了一个函数来使用 Angular 表单中的 addControl()
方法,但无论我如何尝试应用它或在何处应用它,我都会收到错误提示 (something).addControl() is not a function
.
我在 class
中定义了这些变量
demoA:string = 'name';
demoB:Array<string> = ['city', 'state'];
demoC:FormGroup<any>= {};
函数看起来像这样
loadStuff(){
let a = this.demoA;
let b = this.demoB;
let c = this.demoC;
let ab:Array<string> = [];
let cc:FormGroup= {};
ab.push(a);
b.forEach(bb => { ab.push(bb)});
console.log(ab);
cc.addControl(a, new FormControl('') );
console.log(cc);
}
如果这对您有任何影响,我会在构造函数中调用它。我最初试图在 forEach()
方法中实现它,但在我决定在一个变量上尝试它时遇到了同样的错误。我已将 Forms
和 ReactiveFormsModule
成功导入到应用程序模块中,并在其他方面正常工作。我在 Angular 的文档中没有遇到任何说明您需要将任何其他内容导入组件的内容,我做错了什么?
变量 cc
的类型为 FormGroup
但它被定义为 Object
,您必须将其定义为 FormGroup
.
let cc:FormGroup = new FormGroup({});
或使用 @angular/forms
中的 FormBuilder
constructor(private formBuilder: FormBuilder) { }
// ...
let cc: FormGroup = this.formBuilder.group({});
我创建了一个函数来使用 Angular 表单中的 addControl()
方法,但无论我如何尝试应用它或在何处应用它,我都会收到错误提示 (something).addControl() is not a function
.
我在 class
中定义了这些变量demoA:string = 'name';
demoB:Array<string> = ['city', 'state'];
demoC:FormGroup<any>= {};
函数看起来像这样
loadStuff(){
let a = this.demoA;
let b = this.demoB;
let c = this.demoC;
let ab:Array<string> = [];
let cc:FormGroup= {};
ab.push(a);
b.forEach(bb => { ab.push(bb)});
console.log(ab);
cc.addControl(a, new FormControl('') );
console.log(cc);
}
如果这对您有任何影响,我会在构造函数中调用它。我最初试图在 forEach()
方法中实现它,但在我决定在一个变量上尝试它时遇到了同样的错误。我已将 Forms
和 ReactiveFormsModule
成功导入到应用程序模块中,并在其他方面正常工作。我在 Angular 的文档中没有遇到任何说明您需要将任何其他内容导入组件的内容,我做错了什么?
变量 cc
的类型为 FormGroup
但它被定义为 Object
,您必须将其定义为 FormGroup
.
let cc:FormGroup = new FormGroup({});
或使用 @angular/forms
FormBuilder
constructor(private formBuilder: FormBuilder) { }
// ...
let cc: FormGroup = this.formBuilder.group({});