0
我有兩個組件,SearchComponent和RuleListComponent。 搜索是RuleList的子項。如何將observable傳遞給angularjs2中的父組件?
我想的SearchComponent使用APIService下載數據。 這些數據必須以可觀察的方式傳遞給RuleList。
的SearchComponent:
export class SearchComponent implements OnInit {
items: Observable<Array<string>>;
term = new FormControl(); # term is async
constructor(private apiService: APIService) { }
ngOnInit() {
this.items = this.term.valueChanges
.debounceTime(1000)
.distinctUntilChanged()
.switchMap(term => this.apiService.fetch('rule', term));
}
}
APIService:
@Injectable()
export class APIService {
baseUrl: string;
constructor(private http: Http) {
this.baseUrl = '//127.0.0.1:8000/';
}
fetch(term: string) : Observable<any> {
console.log('searching');
var search = new URLSearchParams();
search.set('search', term);
return this.http.get(this.baseUrl, { search })
.map(response => response.json());
}
}
我怎樣才能保持距離的SearchComponent將數據傳遞到RuleListComponent異步根據不斷變化的期限多長?
將'items'存儲在'APIService'上,以便您的'SearchComponent'和'RuleListComponent'可以訪問它們 –