Javascript 在自定义角度输入中传播输入

Javascript 在自定义角度输入中传播输入,javascript,angular,Javascript,Angular,我有一个自定义的角度输入组件,它使用textarea作为输入字段 如何将enter key事件传播到父窗体?您可以创建一个自定义事件,一旦收到enter key事件,该事件将发送到父窗体 在自定义输入元素中: 默认情况下,几乎所有事件(包括keyup事件)都会冒泡到父元素 实例 对于作为组件的textarea,enter事件将出现在窗体上 试试这个 @Output() onEnterPressed:EventEmitter<any> = new EventEmmitter<an

我有一个自定义的角度输入组件,它使用textarea作为输入字段


如何将enter key事件传播到父窗体?

您可以创建一个自定义事件,一旦收到enter key事件,该事件将发送到父窗体

在自定义输入元素中:


默认情况下,几乎所有事件(包括keyup事件)都会冒泡到父元素

实例 对于作为组件的textarea,enter事件将出现在窗体上

试试这个

@Output() onEnterPressed:EventEmitter<any> = new EventEmmitter<any>();


// Method called on KeyUp event. Using KeyUp as it recommended by Angular for Keyboard events.
handleKeyPressed(keyEvent:KeyboardEvent) {

  if(enter_key_is_pressed) {
    this.onEnterPressed.emit(keyEvent);
  }
}
<custom-input [onEnterPressed]="handleEnterEvent($event)"></custom-input>
handleEnterEvent(event:KeyboardEvent):void {
  //do_whatever_you_want
}
<form (keyup.enter)="addAction('form')">
  <textarea (keyup.enter)="addAction('textarea')"></textarea>
  <input-component (keyup.enter)="addAction('input')"></input-component>
</form>