如何查看 angular 2 中的事件是否已执行?
How to find out if an event in angular 2 is implemented?
我有这个代码(angular 2 飞镖):
@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
属性 会在客户端连接到控制器时通知您,这就是您知道用户正在收听流的方式。仅仅依靠 (close)
属性不是很可靠,因为您的组件可以从 Angular 模板以及以编程方式使用。
参见:https://api.dartlang.org/1.12.1/dart-async/StreamController/onListen.html
我有这个代码(angular 2 飞镖):
@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
属性 会在客户端连接到控制器时通知您,这就是您知道用户正在收听流的方式。仅仅依靠 (close)
属性不是很可靠,因为您的组件可以从 Angular 模板以及以编程方式使用。
参见:https://api.dartlang.org/1.12.1/dart-async/StreamController/onListen.html