首页 文章

“... / node_modules / rxjs / Rx”没有导出的成员'throwError'

提问于
浏览
3

Angular文档说的是“throwError”类,其import语句如下所示

import { Observable, throwError } from 'rxjs';

但我的编译器无法找到该类,并抱怨以下错误消息

src / app / shared / services / myservice.service.ts(3,10)中的错误:错误TS2305:模块'“D:/ workspace / dev / MyProject / node_modules / rxjs / Rx”'没有导出成员'throwError ” .

以下是我的环境细节

Angular CLI:1.6.8
节点:8.11.1
操作系统:win32 x64
Angular:5.2.8
...动画,通用,编译器,编译器 - cli,核心,表单
... http,语言服务,平台浏览器
...平台浏览器动态,平台服务器,路由器

@ angular / cdk:5.2.4
@ angular / cli:1.6.8
@ angular / material:5.2.4
@ angular / service-worker:1.0.0-beta.16
@ angular-devkit / build-optimizer:0.0.42
@ angular-devkit / core:0.4.5
@ angular-devkit / schematics:0.0.52
@ ngtools / json-schema:1.1.0
@ ngtools / webpack:1.9.8
@ schematics / angular:0.1.17
打字稿:2.4.2
webpack:3.10.0

我错过了什么?

2 回答

  • 7

    您在寻找 _throw 可观察到的吗?

    import {_throw} from 'rxjs/observable/throw';
    

    更新

    您正在查看Angular 6文档,其中包含 rxjs 版本6,其中包含 throwError 函数 . 对于Angular 5(包括 rxjs 5),请使用 _throw

  • 0

    有RxJS文档 . 链接 - > https://github.com/ReactiveX/rxjs/blob/master/doc/pipeable-operators.md

    因为throw是一个关键词,你可以在 import { _throw } from 'rxjs/observable/throw' 之后使用 _throw .

    或者,如果您不想在 _throw 中使用前导 _ ,则可以执行以下操作:

    import { ErrorObservable } from 'rxjs/observable/ErrorObservable';
    ...
    const e = ErrorObservable.create(new Error('My bad'));
    const e2 = new ErrorObservable(new Error('My bad too'));
    

相关问题