I am learning Angular 2, TypeScript, RxJs, etc., and I am having trouble returning a subset of the data inside the service using RxJs and Observable.
I expect the getCars function below to read the json file, parse it and return a piece of data (offset and count). However, I always get all the data back (I have 200 objects / machines in the file I'm testing).
What am I doing wrong?
EntityService
@Injectable() export class EntityService { constructor(private http: Http) { } getCars(offset: number, count: number): Observable<Car[]> { return this.http .get('resources/data/cars.json') .map(this.extractData) .skip(offset) .take(count) .catch(this.handleError); } private extractData(res: Response) { let body = res.json(); return body.data || {}; } private handleError(error: any) {
cars.json
{ "data":[ { "vin":"ee8a89d8", "brand":"Fiat", "year":1987, "color":"Maroon" }, { "vin":"642b3edc", "brand":"Renault", "year":1968, "color":"White" } ] }
javascript angular typescript rxjs
Martin
source share