属性 'push' 在类型“() => void”上不存在。如何解决 Typescript Angular 10 中的这个错误?
Property 'push' does not exist on type '() => void'. How to resolve this error in Typescript Angular 10?
当我在 Typescript 的 Angular 10 项目的数组上使用 push() 时出现此错误。
错误
Property 'push' does not exist on type '() => void'.ts(2339)
请帮我弄清楚为什么会出现这个错误,我该如何解决?
export class GrantProgramComponent implements OnInit {
grantProgramForms : any = this.fb.array([]);
constructor(private fb: FormBuilder ) { }
ngOnInit(): void {
this.AddGrantProgramForms();
}
AddGrantProgramForms(){
this.AddGrantProgramForms.push(this.fb.group({
Id : [0],
ProgramName : [''],
ProgramCode : [''],
StartDate : [''],
EndDate : [''],
Status : [false]
}));
}
}
在构造函数中初始化表单生成器之前,您不能使用它。将您的逻辑移动到构造方法中:
grantProgramForms : any
constructor(private fb: FormBuilder ) {
this.grantProgramForms = this.fb.array([]);
}
然后在您的 addGrantProgramForms
方法中您引用了错误的变量,我认为您的意思是 this.grantProgramForms.push
而不是 this.AddGrantProgramForms.push
当我在 Typescript 的 Angular 10 项目的数组上使用 push() 时出现此错误。
错误
Property 'push' does not exist on type '() => void'.ts(2339)
请帮我弄清楚为什么会出现这个错误,我该如何解决?
export class GrantProgramComponent implements OnInit {
grantProgramForms : any = this.fb.array([]);
constructor(private fb: FormBuilder ) { }
ngOnInit(): void {
this.AddGrantProgramForms();
}
AddGrantProgramForms(){
this.AddGrantProgramForms.push(this.fb.group({
Id : [0],
ProgramName : [''],
ProgramCode : [''],
StartDate : [''],
EndDate : [''],
Status : [false]
}));
}
}
在构造函数中初始化表单生成器之前,您不能使用它。将您的逻辑移动到构造方法中:
grantProgramForms : any
constructor(private fb: FormBuilder ) {
this.grantProgramForms = this.fb.array([]);
}
然后在您的 addGrantProgramForms
方法中您引用了错误的变量,我认为您的意思是 this.grantProgramForms.push
而不是 this.AddGrantProgramForms.push