他们我试图在这个链接http://blog.thoughtram.io/angular/2016/01/06/taking-advantage-of-observables-in-angular2.html的帮助下使用angular2 http请求来实现搜索功能....在这个例子中,来自wiki的响应将是一个字符串数组,所以代码就像此...
@Component({
selector: 'my-app',
template: `
<div>
<h2>Wikipedia Search</h2>
<input type="text" [ngFormControl]="term"/>
<ul>
<li *ngFor="#item of items | async"></li>
</ul>
</div>
`
})
export class App {
items: Observable<Array<string>>;
term = new Control();
constructor(private wikipediaService: WikipediaService) {
this.items = wikipediaService.search(this.term.valueChanges);
}
}
如果响应是一个对象数组,那么我将从
更改此语句items: Observable<Array<string>>; to items: Observable<Array<object>>;
但是我没有得到它......如果来自远程服务器的响应是一个对象数组,有人请告诉我一种实现的方法......这是我的演示http://plnkr.co/edit/BE3l7lQpic9rzDZyomhP?p=preview假设响应是对象数组请指导我
答案 0 :(得分:2)
您忘记包含您使用的运算符。您可以在导入中添加它:
import {Injectable} from 'angular2/core';
import {URLSearchParams, Jsonp} from 'angular2/http';
import {Observable} from 'rxjs/Observable';
import 'rxjs/add/operator/debounceTime'; // <----
@Injectable()
export class WikipediaService {
(...)
}
请参阅此plunkr:http://plnkr.co/edit/ybShAY1hOLoGG2WHlHTW?p=preview。