Angular2中的常规错误处理-绑定失败

Angular2中的常规错误处理-绑定失败,angular,error-handling,Angular,Error Handling,我最近发现我的html内容包括 {{employer.userdata.firstname}} 而在类级别上,employer.firstname的实现发生了变化。坏的副作用是,错误的绑定没有引发任何类型的异常,只有经过长时间的调试,我才发现employer.userdata==undefined 所以我在想,是否有机会实现一些通用的异常/错误处理程序,以便在控制台上提供有用的信息。我试过了 在我的app.module.ts中 @NgModule({ providers: [{ provi

我最近发现我的html内容包括

{{employer.userdata.firstname}}
而在类级别上,
employer.firstname
的实现发生了变化。坏的副作用是,错误的绑定没有引发任何类型的异常,只有经过长时间的调试,我才发现
employer.userdata==undefined

所以我在想,是否有机会实现一些通用的异常/错误处理程序,以便在控制台上提供有用的信息。我试过了

在我的
app.module.ts中

@NgModule({
  providers: [{ provide: ErrorHandler, useClass: MyErrorHandler }]
})
但仍然没有控制台日志。有没有关于如何“正确”完成的提示

编辑:

从回答中,我发现我的示例太简单了:-/我重新检查了代码,代码如下:

<input class="form-control" type="text" id="firstName"
                                formControlName="firstName"
                                [formControl]="form.controls['firstName']"
                                [(ngModel)]="employer.userdata.firstname">


将其更改为
employer.fistname
后,整个代码运行良好。我只是在执行了一个手动
doCheck()
之后才得到一个提示,它最终引发了异常。我猜这个异常在完整控件的init阶段之前已经抛出了,并且在某个地方被吞没了==>如何让它吞没?我的方法没有帮助:-/

如果employer.userdata未定义,则在控制台中会出现“无法读取未定义的属性名”错误,而无需执行任何特殊操作。所以问题不是这样。请参阅。错误处理程序仅阻止Angular应用程序在发生错误后退出。如果
employmer.userdata
实际上是
未定义的
{{employer.userdata.firstname}}
应该在浏览器控制台中显示错误,并且自定义错误处理程序可以防止在控制台中显示错误。如果没有,错误处理程序也不会收到响应的1.thx-我已经更新了示例。我已经测试了Günters注释,发现控制台上有一个错误——但在我的用例中——在我的应用程序中没有:-/=>这可以关闭吗?如果是这样->在哪里?我不认为这可以关闭。但事实上,如果我在表中使用
{{employer.userdata.firstname}
它作为第二列条目==>第一行第一个元素显示,所有后续元素都不会显示-但是表行是框架式的(几个100秒)!并且没有一条错误消息:-/
<input class="form-control" type="text" id="firstName"
                                formControlName="firstName"
                                [formControl]="form.controls['firstName']"
                                [(ngModel)]="employer.userdata.firstname">