在Angular 4中,我如何失去对keyup的关注

在Angular 4中,我如何失去对keyup的关注,angular,Angular,我创建了一个plunkr来解释我在说什么 //我们的根应用程序组件 从“@angular/core”导入{Component,NgModule,VERSION} 从“@angular/platform browser”导入{BrowserModule} @组成部分({ 选择器:“我的应用程序”, 模板:` `, }) 导出类应用程序{ 名称:字符串; 构造函数(){ } func(){ log(“此处失去焦点”) } } @NGD模块({ 导入:[BrowserModule], 声明:[App

我创建了一个plunkr来解释我在说什么

//我们的根应用程序组件
从“@angular/core”导入{Component,NgModule,VERSION}
从“@angular/platform browser”导入{BrowserModule}
@组成部分({
选择器:“我的应用程序”,
模板:`
`,
})
导出类应用程序{
名称:字符串;
构造函数(){
}
func(){
log(“此处失去焦点”)
}
}
@NGD模块({
导入:[BrowserModule],
声明:[App],
引导:[应用程序]
})
导出类AppModule{}

我想在键盘上的输入框上失去焦点

您可以通过在按键事件上设置
$event.target.blur()
来失去焦点

<input (keyup.enter)="$event.target.blur()" >


通过在按键事件上设置
$event.target.blur()
,您可能会失去焦点

<input (keyup.enter)="$event.target.blur()" >


实现您想要的有多种方法,另一个例子是使用@ViewChild和ElementRef

Html:


您可以进一步使用@HostListener,我不打算显示它。

有多种方法可以实现您想要的,另一个例子是使用@ViewChild和ElementRef

Html:

您可以进一步使用@HostListener,我不打算显示它

<input #myEventRef (keyup.enter)="myEvent()" />
import { Component, ElementRef, ViewChild } from "@angular/core";


@Component({
    selector: "app",
    templateUrl: "./app.component.html",
})
export class AppComponent {
    constructor(private readonly el: ElementRef) {
    }

    @ViewChild("myEventRef") myEventRef: ElementRef;

    myEvent() {
        this.myEventRef.nativeElement.blur();
    }
}