我注意到 Angular 2 与文档不同,当我进行事件绑定(bind)时,我不必传递 $event 来从组件方法访问事件数据。所以下面的代码工作正常:
在模板中:
<h2 (mouseover)="getCoord()" >Random Words</h2>
在组件中:
getCoord() {
console.log(event.clientX + ", " + event.clientY);
}
这非常有效,无需将 $event 对象传递给该方法。
这样可以吗?这是现在的首选方法,但文档没有显示吗?我觉得没问题。
最佳答案
我会认为这是 Angular 中的一个错误,不会在它的基础上继续工作。
例如 @HostListener()具有显式 args
参数的装饰器,您可以在其中定义是否应传递 $event
或 $event.target
或其他一些事件属性。
WebWorker 和 UI 线程之间的通信进行了一些优化,其中只有事件的一部分被序列化并在 args 中定义的这些线程之间传递。我假设您在问题中使用的事件绑定(bind)会发生类似的情况。
关于javascript - angular 2 事件绑定(bind) - 我需要 $event 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36842047/