【发布时间】:2016-07-25 20:32:11
【问题描述】:
非常简单的基类Closer
import {EventEmitter, Output} from 'angular2/core';
export class Closer {
@Output() closed: EventEmitter<any> = new EventEmitter();
constructor() {}
close() {
this.closed.emit({});
}
}
如果我 extends Closer 另一个班级,然后用标记
<derived-class (closed)="closeHandler()"></derived-class>
closeHandler() 永远不会被调用。我可以看到Closer.close() 被调用,但是派生类不会传播或由其模板包含派生类和事件绑定的类处理。
如果我只是将@Output 移动到派生类,它就可以工作。但似乎 Angular2 应该把它放在派生类上。完全定义一组行为并继承它的能力会很好。
【问题讨论】:
标签: event-handling angular derived-class base-class eventemitter