我正在使用@HostBinding
将函数的结果绑定到宿主元素的visible属性:
@HostBinding('attr.visible')
private get visibleAttr(): any {
return this._visible ? '' : null;
}
该函数名称似乎是多余的,因为没有别的函数可以调用此函数。我试图将其声明为匿名lambda函数,但无法正常工作:
@HostBinding('attr.visible') (() => {
return this._visible ? '' : null;
})
是否可以匿名或至少使用lambda声明此函数?还是Angular框架依赖于它的命名?
答案 0 :(得分:2)
@HostBinding
是修饰符,需要有效的成员来修饰。 如果您的第二个代码示例
<a href='#' id='link-1' target="_blank">Share Attempt 1</a><br/>
<a href='#' id='link-2' target="_blank">Share Attempt 2</a><br/>
<a href='#' id='link-3' target="_blank">Share Attempt 3</a><br/>
<a href='#' id='link-4' target="_blank">Share Attempt 4</a><br/>
本身是一个有效的成员,它可以工作,但对于成员声明,这不是有效的打字稿(或javascript)。因此,它不起作用。