我想在角度4組件之間傳遞數據。 我不想使用input \ output。在Homecomponent中的 我想將數據推入服務並在page2組件中我想從服務中獲取數據。 我只是看着可觀察的和主題的方式,我試圖實現它沒有成功。角度4傳遞組件之間的數據沒有輸入輸出
HomeComponent
import { ClientService } from './../clinet-service.service';
import { Component, OnInit } from '@angular/core';
@Component({
selector: 'page-home',
template: 'pages/home/home.html',
})
export class HomeComponent implements OnInit {
clients = ['john', 'jane']
clientFound = false
// constructor(private navController: NavController) { }
constructor(private clientService: ClientService) {
}
openClient(client) {
}
ngOnInit() {
this.clientService.subject.next([
{ name: 'Harold', age: 35 }
]
);
}
}
page2component
import { ClientService } from './../clinet-service.service';
import { Component } from '@angular/core';
@Component({
selector: 'page-2',
template: '{{clients}}'
})
export class Page2Component {
client:any;
constructor( private clientService: ClientService) {
}
ngOnInit(){
debugger
let clients = this.clientService.observable.subscribe(clients => console.log(clients));
}
}
clientService
import { Injectable, OnInit, OnDestroy } from '@angular/core';
import { Subject } from 'rxjs/Subject';
import { BehaviorSubject } from 'rxjs/BehaviorSubject';
import { Observable } from "rxjs/Observable";
@Injectable()
export class ClientService {
subject: Subject<any> = new Subject<any>();
observable: Observable<any> = this.subject.asObservable();
}
其實我不喜歡執行的方式,因爲我努力使簡單的事情,例如推送數據服務並將其用於其他組件,但我無法做到這一點。
是什麼我不知道什麼在第2頁 –
你沒有得到在控制檯什麼? –
錯誤 – Kyrsberg