【发布时间】:2020-06-07 02:07:19
【问题描述】:
考虑以下组件:
@Component({
selector: 'app-test'
template: 'Hello!'
}}
export class TestComponent {
@Output() readonly selectionChange = new EventEmitter<SomeTypeHere>();
}
随叫随到:
<app-test (selectedChange)="selectedChangeHandler($event)"></app-test>
请注意,我写的是selectedChange,而不是正确的输出名称selectionChange。启用了 strictTemplates 标志的 Angular 9 对我一点帮助都没有。它默默地失败了。有趣的是,如果我对@Input 做同样的事情,应用程序会捕获错误并且不会编译。
如果我尝试“监听”一个不存在的@Output,有什么方法可以抛出错误?
【问题讨论】:
-
以前版本的 Angular 是否有任何错误?我认为它从来没有对此抛出任何错误
-
@Aravind 不,它从不抛出错误。我在问有没有可能。提前致谢。
-
为什么要抛出错误?有特殊需要吗?我正在尝试理解您的问题
-
@Aravind 好吧,我正在与许多开发人员一起开发企业应用程序,因此拥有某种信息/警告/错误很重要。有时有人更改/删除共享库中的
@Output(),甚至在应用程序上忘记删除 calls... 因为我们没有编译错误,就像我们有 @ 987654329@,我们无法找到导致某些问题的确切原因(甚至无法在代码中保留垃圾)。单元测试会有所帮助吗?也许吧,但由于时间关系,当时还不可能。
标签: angular angular-directive angular9