Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/31.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angular 角度rxjs贴图管道给出';这';上下文问题_Angular_Rxjs - Fatal编程技术网

Angular 角度rxjs贴图管道给出';这';上下文问题

Angular 角度rxjs贴图管道给出';这';上下文问题,angular,rxjs,Angular,Rxjs,我刚刚升级了一个CLI项目以使用angular 6+ 一切正常,网站显示的数据除外。。所以除了一个小问题没有问题 “Observable”类型的“this”上下文不可分配给 方法的“this”类型为“Observable” getStartpageCategoryWithProducts(startpagePosition,pageSize?,page?):承诺{ 设params=newhttpparams(); if(pageSize){params=params.append('pageSi

我刚刚升级了一个CLI项目以使用angular 6+ 一切正常,网站显示的数据除外。。所以除了一个小问题没有问题

“Observable”类型的“this”上下文不可分配给 方法的“this”类型为“Observable”

getStartpageCategoryWithProducts(startpagePosition,pageSize?,page?):承诺<[Category,ProductList]>{
设params=newhttpparams();
if(pageSize){params=params.append('pageSize',pageSize);}
如果(page){params=params.append('page',page);}
常量选项={
params
};
常量url='catalog/categories/startpagePosition/'+startpagePosition;
返回此.http.get(url,options).pipe(
映射(res=>[res['category'],this.extractData(res['searchResult'])),
catchError((err)=>this.handleError(err))
).toPromise();
}

我认为问题在于.get.map不是给你一个可观察的,而是给你一个普通的可观察的,如果你删除toPromise中的输入,你就可以了

getStartpageCategoryWithProducts(startpagePosition, pageSize ?, page ?): Promise {
  let params = new HttpParams();
  if(pageSize) { params = params.append('pageSize', pageSize); }
    if(page) { params = params.append('page', page); }
    const options = {
    params
  };
  const url = 'catalog/categories/startpagePosition/' + startpagePosition;
  return this.http.get(url, options).pipe(
    map(res => [res['category'], this.extractData(res['searchResult'])]),
    catchError((err) => this.handleError(err))
  ).toPromise();
}
好的!
getStartpageCategoryWithProducts(startpagePosition, pageSize ?, page ?): Promise {
  let params = new HttpParams();
  if(pageSize) { params = params.append('pageSize', pageSize); }
    if(page) { params = params.append('page', page); }
    const options = {
    params
  };
  const url = 'catalog/categories/startpagePosition/' + startpagePosition;
  return this.http.get(url, options).pipe(
    map(res => [res['category'], this.extractData(res['searchResult'])]),
    catchError((err) => this.handleError(err))
  ).toPromise();
}