<_element_ ng-keyup="_expression_">
import { Component } from '@angular/core';Component({selector: 'app-key-up4',template: `<input #box (keyup.enter)="update(box.value, $event)" (blur)="update(box.value)">`})export class KeyUpComponent_v4 {value = '';update(value: string, event: any) { this.value = value; }}
常用的过滤有
(keyup.enter) // 按键并回车(keyup.space) // 按键并空格(keyup.control) // 按键并ctrl(keyup.shift) // 按键并shift(keyup.alt) // 按键并alt(keyup.1) // 按键1触发(keyup.,) // 按键,触发(keyup.3) // 按键并alt
EventManager事件
import { EventManager } from '@angular/platform-browser';import { Component, OnInit } from '@angular/core';@Component({selector: 'app-demo',templateUrl: './demo.component.html',styleUrls: ['./demo.component.css']})export class DemoComponent implements OnInit {constructor(private eventManager: EventManager) { }this.eventManager.addGlobalEventListener('window', 'keydown', (event:any) => {console.log('监听到键盘按下事件了',event);if(event.keyCode == 37 || event.key == 38 || event.key == 39 || event.key == 40){//监听到 上下左右 的键盘按下事件时,调用我自己的rePosition()方法~this.rePosition(event.keyCode) ;}});}
