代码之家  ›  专栏  ›  技术社区  ›  xaisoft

“Observable<Object>”类型上不存在属性“concatMap”?

  •  5
  • xaisoft  · 技术社区  · 7 年前

    我从Angular 4升级到了Angular 5 Http 具有 HttpClient . 我从我的 http.post 现在返回 Observable<Object> ,但在我的组件中,它现在正在抱怨 concatMap does not exist on type Observable<Object> . 下面是我正在做的一个例子:

    //service
    import { HttpClient} from '@angular/common/http';
    
    constructor(private _http: HttpClient) { }
    
    registerDomain()
    {
    
    return this._http.post('/api/domain/domain/register', {});
    }
    
    //component
    registerDomain(caseId,domain) {
        return this._domainService.registerDomain(caseId,domain)
          .concatMap(operation => this.getOperationDetail(operation.OperationId,this.caseId,domain))
          .concatMap(() => this.createRecordSets(domain));
      }
    

    我可以在上看到地图和合并地图 可观察(<对象(>); 但不是 concatMap

    2 回复  |  直到 7 年前
        1
  •  10
  •   Lucas Tétreault    7 年前

    尝试导入此项:

    import 'rxjs/add/operator/concatMap'

        2
  •  5
  •   jrelo    7 年前

    你需要使用管道

    registerDomain(caseId,domain) {
        return this._domainService.registerDomain(caseId,domain)
          .pipe(
             concatMap(operation => this.getOperationDetail(operation.OperationId,this.caseId,domain))
             concatMap(() => this.createRecordSets(domain))
        );
      }