Mar*_*ery 9 javascript angular
Angular的HostListener装饰器有两个参数.第一个指定要侦听的事件的名称.第二个是一个可选的字符串数组,不带任意命名args.当然,它的含义目前尚未在文档中解释(目前文档中有四个单词用于记录HostListener装饰器,前两个单词表示它是,呃,"HostListener装饰器").
我只见过HostListener两种方式:
args完全省略论点(例如https://angular.io/guide/styleguide#style-06-01)args参数指定为['$event'],例如https://angular-2-training-book.rangle.io/handout/advanced-angular/directives/listening_to_an_element_host.html这个神秘的args参数做了什么,为什么有时指定为['$event']?
$event是实际事件值的保留名称,就像可以在(click)="clickHandler($event)"事件绑定中使用的名称一样。
@HostListener('eventName', args) 支持像这样的值数组
['$event.target.value', '$event.name']
Run Code Online (Sandbox Code Playgroud)
它指定将哪些值作为参数传递给事件处理程序。
看起来总是始终传递$event(假定['$event']为默认)是一种更合理的方法,
但是如果使用WebWorker,则可以通过仅传递事件的那一部分来减少UI线程和WebWorker线程之间传递的数据量。事件处理程序实际需要的值(如果省略该参数,则根本没有值)。
另请参见https://angular.io/api/core/HostListener#args
| 归档时间: |
|
| 查看次数: |
2664 次 |
| 最近记录: |