我想添加属性绑定到一个元素,但是带有一个指令(我正在使用Angular 7)。
例如给出以下元素:
<div myCustomDirective>This is a test</div>
在myCustomDirective的实现中,我想添加任意属性绑定(由另一个控件使用):
constructor(private elementRef: ElementRef, private renderer: Renderer2) {
// Add the following property
// [myBinding]="data"
}
如此有效地导致如下所示:
<div myCustomDirective [myBinding]="data">This is a test</div>
这怎么实现?
更新:
我的目标是通过自定义逻辑扩展另一个控件的行为。但是,我不想创建一个单独的控件,而是希望通过一条指令添加该逻辑。
例如,说我想根据某些条件应用某些属性绑定。通过指令,我可以检查该条件并有选择地添加属性绑定。
附加更新:
显然还不清楚,所以让我进一步澄清。假设您有一个名为MakeCoffee的第三方指令。假设此伪指令可用于多个属性绑定。但是,它缺少您期望的某些行为。因此,为了添加其他行为/逻辑,您可以创建自己的指令,该指令检查您自己的自定义逻辑并根据需要应用第三方属性绑定。