我有这个代码(Angular 2 dart):
@Component(
selector: 'alert',
events: const ['close'])
@View(
templateUrl: 'alert.html')
class Alert implements OnInit{
String type = 'warning';
EventEmitter close = new EventEmitter();
}
如何查明用户是否实现了 (close)
属性:
<alert (close)="closeAlert($event)">Alert!</alert>
或者查明用户是否未指定参数?我无法检查是否 close
一片空白。因为这不是 callback
,但是EventEmitter
对象。
最佳答案
close
属性不必是 EventEmitter
。您可以创建一个 StreamController
并将其流发布为 close
。 StreamController 具有 onListen 属性,当客户端连接到 Controller 时,该属性会通知您,这样您就知道用户正在监听流。仅仅依赖 (close)
属性并不是很可靠,因为您的组件可以通过 Angular 模板以及以编程方式使用。
参见:https://api.dartlang.org/1.12.1/dart-async/StreamController/onListen.html
关于dart - 如何查明 Angular 2中的事件是否被实现?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32749486/