错误TypeError:无法读取未定义的属性'setValue'

时间:2018-03-29 12:19:32

标签: angular

我有一个简单的应用程序可以将数据添加到表中,

enter image description here

+按钮给出了这个(显示要添加的表格并且通常可以编辑):

enter image description here

我的代码适用于添加和deletin,但是当我想编辑un元素时,我遇到了这个问题:

TablesComponent.html:72 ERROR TypeError: Cannot read property 'setValue' of undefined

如果以前没有查看过该表单,我知道我的错误在哪里,但我看不懂如何处理它:

<form style="width:100%" *ngIf="showForm" (ngSubmit)="onAddLine(bapF)" #bapF="ngForm">

在编辑按钮的函数中,我首先显示表单,然后将其值设置为所选元素(代码将在表单添加到DOM之前设置表单值):

updateEltBap (eltIndex: number, bapElt: Bap) {
this.showForm = true;
this.editMode = true;
this.bapEditedElt = this.bapTable[eltIndex];
this.bapF.setValue({cBap: this.bapEditedElt.code_bap, nBap: this.bapEditedElt.nom_bap});

}

感谢您的帮助

1 个答案:

答案 0 :(得分:2)

在模板中使用#bapF="ngForm"意味着您可以在该模板中使用bapF,但不会从组件的代码中自动访问它。

尝试将其添加到您的组件

@ViewChild('bapF') bapF;