Angular2中有哪些选项(keyup)?

input键被释放时,下面的工作很好。 除了keyup.enter还有什么其他选项可用于keyup

 <input #inputstring (keyup.enter)="doSomething(inputstring.value)"/> 

这些是目前在testing中logging的选项:ctrl,shift,enter和escape。 这些是键绑定的一些有效例子:

 keydown.control.shift.enter keydown.control.esc 

你可以在这里跟踪这个,而没有官方的文件存在,但他们应该很快就会出来。

这个文件给你一些提示,例如,keydown.up不起作用,你需要keydown.arrowup:

https://github.com/angular/angular/blob/630d93150a58581a0d474ebf1befb5d09b6813c5/modules/angular2/src/platform/browser/browser_adapter.dart

你可以像这样添加keyup事件

 template: ` <input (keyup)="onKey($event)"> <p>{{values}}</p> ` 

在Component中,代码如下所示

 export class KeyUpComponent_v1 { values = ''; onKey(event:any) { // without type info this.values += event.target.value + ' | '; } } 

如果您的键盘事件不在CTRLSHIFTENTERESC括号内,只需使用@Md Ayub Ali Sarker的指南。 在这里提到的angular度文档https://angular.io/docs/ts/latest/guide/user-input.html中唯一的keyup伪事件是;ENTER键。 数字键和字母表还没有关键的伪事件。

我正在寻找一种绑定到多个关键事件的方法 – 特别是Shift + Enter – 但是在线找不到任何好的资源。 但是在loggingkeydown绑定之后

 <textarea (keydown)=onKeydownEvent($event)></textarea> 

我发现键盘事件提供了我需要检测Shift + Enter的所有信息。 原来$event返回一个相当详细的KeyboardEvent 。

 onKeydownEvent(event: KeyboardEvent): void { if (event.keyCode === 13 && event.shiftKey) { // On 'Shift+Enter' do this... } } 

还有CtrlKey,AltKey和MetaKey(即Mac上的Command键)的标志。

不需要KeyEventsPlugin,JQuery或纯JS绑定。