Angular js 2 'node_modules/rxjs/Observable"' 没有导出的成员 'Observable'。导入 Observable

Posted

技术标签:

【中文标题】Angular js 2 \'node_modules/rxjs/Observable"\' 没有导出的成员 \'Observable\'。导入 Observable【英文标题】:Angular js 2 'node_modules/rxjs/Observable"' has no exported member 'Observable'. import ObservableAngular js 2 'node_modules/rxjs/Observable"' 没有导出的成员 'Observable'。导入 Observable 【发布时间】:2018-10-15 17:54:24 【问题描述】:

我在 Node_Modules 包中的 Auth.d.ts 文件中遇到错误。

[ts] 模块“node_modules/rxjs/Observable”没有导出的成员“Observable”。 导入 Observable

为 Auth.d.ts 文件找到以下代码:

import * as firebase from 'firebase/app';
import 'firebase/auth';

import  Observable  from 'rxjs/Observable';
import  FirebaseApp  from '../app/index';
export declare class AngularFireAuth 
    app: FirebaseApp;
    auth: firebase.auth.Auth;
    authState: Observable<firebase.User>;
    idToken: Observable<firebase.User>;
    constructor(app: FirebaseApp);

export declare function FirebaseAuthStateObservable(app: FirebaseApp): Observable<firebase.User>;
export declare function FirebaseIdTokenObservable(app: FirebaseApp): Observable<firebase.User>;

我安装了“npm install @reactivex/rxjs”这个包,即使这样我也遇到了错误

【问题讨论】:

我从 Angular 5 升级到 Angular 6 后遇到同样的错误。你升级 rxjs 了吗? 是的,我更新了 RXJS 【参考方案1】:

如果您的 Angular 版本是 6 或更高版本。

在下面使用:

从“rxjs/operators”导入 take, map ;

从“rxjs/observable/timer”导入 timer ;

安装 - npm install --save rxjs-compat

还有具有其他功能(Take、Map)的用户管道。

定时器(0, 10) .pipe(采取(1000)) .pipe(map(() => x));

【讨论】:

【参考方案2】:
import  Observable  from 'rxjs';

并安装

npm i rxjs-compat

【讨论】:

【参考方案3】:

npm i rxjs-compat

请将这些添加到根文件夹

你的问题肯定会解决

【讨论】:

【参考方案4】:

试试npm install rxjs-compatyarn add rxjs-compat

这对我有用。

【讨论】:

这是上述步骤之后需要的额外步骤【参考方案5】:

尝试将其更改为:

import  Observable  from 'rxjs';

【讨论】:

是的,上面一行已经完成,但仍然面临同样的问题 这确实解决了我的问题,希望它也对你有用。确保您收到相同的错误,而不是与 Of 相关的其他错误。 尝试使用最新的库,这适用于 angularjs 4.0【参考方案6】:

如果您使用的是 Angular 版本 6,那么您可以使用

// 创建和实用方法

import  Observable, Subject, pipe  from 'rxjs';

// 运算符都来自rxjs/operators

import  map, takeUntil, tap  from 'rxjs/operators';

【讨论】:

【参考方案7】:

您必须降级“rxjs”才能使用当前的“firebase”包。

新版本的 'rxjs' 中的导入发生了变化,firebase 目前仅与 5.x.x 版本的 RxJs 兼容。

更改您的 package.json 文件以使用兼容版本的 rxjs:

"rxjs": "5.6.0-forward-compat.4"

然后重新运行 npm install:

npm 我

【讨论】:

以上是关于Angular js 2 'node_modules/rxjs/Observable"' 没有导出的成员 'Observable'。导入 Observable的主要内容,如果未能解决你的问题,请参考以下文章

错误:无法解析 '\node_modules\@angular-devkit\build-angular\src\angular-cli-files\models 中的 'core-js/es7/re

未找到转换选项中的模块 <rootDir>/node_modules/jest-preset-angular/preprocessor.js

损坏的文件 - Angular 项目中 node_modules 中的 .xml2js.DELETE/package,json

错误:无法解析' node_modules @ angular-devkit build-angular src angular-cli-files models中的&#

在angular中用node.js连接redis时遇到的问题——process is not defined at Object../node_modules/redis-errors/ind

在angular中用node.js连接redis时遇到的问题——process is not defined at Object../node_modules/redis-errors/ind