3

尝试从 angular 5.2 升级到 angular 6.0.0,我们遇到以下错误:

error TS2339: Property 'do' does not exist on type 'Observable<

任何想法为什么?

我们使用的代码是

return this.httpClient.post<x>(`${environment.apiUrl}auth/x/`,
  this.abcd,
  httpOptions)
  .do(x1 => this.subject.next(x1))
4

2 回答 2

3

链运营商不久前被弃用,现在它们已被删除。使用管道运算符,在这种情况下tap替换do.

import { tap } from 'rxjs/operators';

return this.httpClient.post(ˋ${environment.apiUrl}auth/x/ˋ, this.abcd, httpOptions)
.pipe(
    tap(x1 => this.subject.next(x1))
);
于 2018-05-06T00:35:22.150 回答
-1
import{ scan,tap,take} from 'rxjs/operators'

do运算符现在替换为tap运算符,所有这些 rxjs 运算符我们只能在管道内使用。

于 2021-03-31T16:12:28.847 回答