在Angular2指令装饰器中:
@Directive ({
selector: "[autoGrow]",
host: {
"(focus)": "onFocus()",
"(blur)": "onBlur()"
}
})
host
是观察者,关于什么事件,以及哪个处理程序。在这种情况下,“主人”意味着什么?
答案 0 :(得分:2)
指令绑定到主机元素:
<input autoGrow>
在这种情况下, <input>
被称为主持人。
(focus)
和(blur)
实际上是由主持人调度的事件,与将侦听器直接添加到input
相同:
<input (focus)="onFocus()" (blur)="onBlur()">
答案 1 :(得分:1)
Host表示承载此组件的DOM元素。
(focus)...
表示侦听组件本身的事件[class.someClass]...
表示在组件本身上添加/删除类答案 2 :(得分:1)
host
表示您将针对该指令适用的元素进行配置。
在这种情况下,您可以为元素的focus
和blur
事件注册处理程序。
这些处理程序将被定义到指令类中。例如,当元素具有焦点时,将调用onFocus
方法。
@Directive ({
selector: "[autoGrow]",
host: {
"(focus)": "onFocus()",
"(blur)": "onBlur()"
}
})
export class MyDirective {
onFocus() {
// handle focus event
}
onBlur() {
// handle blur event
}
}