Добрый день!
Пытаюсь изучить Angular. Все шло хорошо до этого момента, а именно общение компонентов между собой.
Вот у меня есть 2 компонента:
app.component.ts
import { Component} from '@angular/core';
@Component({
moduleId: module.id,
selector: 'my-app',
templateUrl: 'app.component.html'
})
export class AppComponent {
myArr: any = [];
myBTN(){
console.log(this.myArr); // посмотреть что в массиве
}
onSetArr(newArr){
this.myArr = newArr;
console.log('123'); // чтобы видеть выполняется ли
}
}
и child.component.ts
import { Component, OnInit, Output,EventEmitter} from '@angular/core';
import { Response} from '@angular/http';
import { HttpService} from '../../services/http.service';
@Component({
moduleId: module.id,
selector: 'child-app',
templateUrl: 'child.component.html',
providers: [HttpService]
})
export class AudiosComponent implements OnInit {
myArr: any = [];
constructor(private httpService: HttpService){}
ngOnInit(){
this.httpService.getData().subscribe((data: Response) => this. myArr =data.json());
}
@Output() onSetArr = new EventEmitter();
setArr(newArr){
this. onSetArr.emit(this. myArr);
}
}
В итоге ничего не работает.. Ну то есть работает, ошибок никаких нет
Но в app.component ничего не передается((
Как вообще можно передать массив из дочернего элемента в родительский?