Излучение массива с использованием EventEmitter с указанием неопределенного - PullRequest
0 голосов
/ 14 мая 2018

Я пытаюсь передать массив родительскому компоненту, но я получаю неопределенное значение, когда пытаюсь использовать console.log для отправленных данных, мой другой источник событий работает нормально, событие два генерирует массив, но при выводев консоли выдает неопределенное значение (отображается только необходимый код).

ts файл дочернего компонента:

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

// the emitting function (fillArray is the array I'm trying to send)

  sendNo () {
   this.event.emit({columns: this.height, rows: this.width});
   this.eventTwo.emit(this.fillArray);
 }

html файл дочернего компонента:

<label>Width: </label><input type="number" [(ngModel)]="height" 
(ngModelChange)="sendNo()" (ngModelChange) = "getRnd()">
<p></p>
<label>Height: </label><input type="number" [(ngModel)]="width" 
(ngModelChange)="sendNo()" (ngModelChange) = "getRnd()" >
<p></p>

parenthtml-файл компонента:

<app-inputs (event)="getDataFromChild($event)" 
(eventTwo)="getDataFromChildTwo($eventTwo)"></app-inputs>

ts файл родительского компонента:

    getDataFromChildTwo(data) {
  this.randVal = data;
  console.log(this.randVal);
 }

1 Ответ

0 голосов
/ 14 мая 2018

Пожалуйста, измените код родительского компонента следующим образом:

<app-inputs (event)="getDataFromChild($event)" 
(eventTwo)="getDataFromChildTwo($event)"></app-inputs>

Отправляемое событие должно быть $event, а не $eventTwo.

...