簡體   English   中英

如何在angular2中將組件值傳遞給自定義指令主機偵聽器

[英]How to pass component value to Custom Directive Host Listener in angular2

我想將模型值從我的HTML模板傳遞給我的自定義指令:

    @Directive({
    selector: '[eventlistener]'
})
export class EventListener {
  @Input() value:string = 'Not Defined';
    @HostListener('click')
    onClick() {
        console.log('You clicked me',value);
    }
}

在我的HTML模板中:

<button eventlistener (click)="captureClickEvent()" value="model.EmailAddress">test</button>

當前,它正在顯示model.EmailAddress,我想獲取評估值(該值在組件中)。 有什么辦法嗎?

您需要使用[]綁定來獲取價值

<button eventlistener (click)="captureClickEvent()" [value]="model.EmailAddress">test</button>

在onClick方法中使用this.value而不是value

@HostListener('click')
onClick() {
    console.log('You clicked me', this.value);
}

我剛剛使用了{{model.EmailAddress}},就可以了。

<button eventlistener (click)="captureClickEvent()" value="{{model.EmailAddress}}">test</button>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM