我已经看到[Object]:[Event]表达式在Angular @Component中出现过几次,如下例所示。
@Component({
host: {
'(document:click)': 'onClick($event)',
'(window:blur)': 'focusOutFunction($event)',
'(window:focus)': 'focusInFunction($event)',
},
})
我理解诸如(document:click)之类的表达意味着文档对象上的单击事件。我只是想知道这种表达的名称是什么。这是AnguarJs中的独特表达吗?在那里我可以找到关于它的参考。
答案 0 :(得分:0)
这是一个"事件绑定"。它是事件监听器的Angular版本。它很好,因为它可以为您处理所有清理工作,您甚至可以从您的子组件中收听自定义import math
def is_single_precision_numpy(floatval, _float32=np.float32, _isnan=math.isnan):
return _float32(floatval) == floatval or _isnan(floatval)
(使用EventEmitter
装饰器)。
这是Angular中的一个独特表达吗?
是的,这是Angular模板语法的一部分。参考此处:https://angular.io/guide/template-syntax#template-syntax
我可以在哪里找到有关它的参考资料?
以下是有关事件绑定的确切部分的链接:https://angular.io/guide/template-syntax#event-binding---event-
更新以回应海报的评论:
文档和点击之间有什么关系?
结肠前的部分" @Output
"在这种情况下表示事件目标。因此,当您在document
上收听click
个事件时,请使用document
。但是,(document:click)
的默认值只是您放置事件绑定的内容。因此,在您的示例中,如果您将target
部分删除,则会在此元素上侦听document
个事件,而不是整个文档。
来自文档,
事件绑定语法由其中的目标事件名称组成 等号左侧的括号和引用的模板 右边的陈述。