作为学习Angular2的一部分,我创建了模板驱动的表单。当试图显示表单时,我收到一个错误声明:“无法读取未定义的的属性'FirstName‘,尽管我在类的声明中初始化了业务对象(worker)。即使我在构造函数中初始化它,它也是存在的。请参阅我的代码(“精益”版本):Html(EditWorker.component.html):
<input id="firstNameId" type="text" [(ngModel)]= worker.FirstName ... />EditWorker.component.ts:
export class EditWorker
{
constructor(){}
worker : Worker = new Worker();Worker.model.ts:
export class Worker implements IWorker{
...
FirstName:string;
...
constructor(){}我在这里错过了什么?
发布于 2017-12-21 08:40:48
您需要在构造函数内实例化
worker : Worker
constructor(){
this.worker = new Worker();
}发布于 2017-12-21 10:48:32
我知道初始化解决方案应该有效。应用程序引导的方式可能有问题--我已经改变了引导的方式(直接指向我感兴趣的组件),并且它工作了。谢谢大家
发布于 2017-12-21 12:10:31
您是否试图将worker.FirstName更改为worker?.FirstName?
<input id="firstNameId" type="text" [(ngModel)]= worker?.FirstName ... />https://stackoverflow.com/questions/47921046
复制相似问题