从 Angular 4 升级到 7 导致问题

Posted

技术标签:

【中文标题】从 Angular 4 升级到 7 导致问题【英文标题】:Upgrading from Angular 4 to 7 causing problems 【发布时间】:2019-10-04 11:08:29 【问题描述】:

我已将我的项目从 Angular 4 升级到 Angular 7,但出现以下错误:

node_modules/@ng-bootstrap/ng-bootstrap/typeahead/typeahead.d.ts(3,10) 中的错误: 错误 TS2305:模块 '"D:/usman/dev_area/code/physician-portal/node_modules/rxjs/Observable"' 没有导出成员 'Observable'

node_modules/rxjs/Observable.d.ts(1,15): 错误 TS2307: 找不到模块 'rxjs-compat/Observable

【问题讨论】:

【参考方案1】:

这听起来是 rxjs-compat 的问题。尝试运行:

npm install --save rxjs-compat

【讨论】:

这是一个创可贴,你最好花时间更新你的代码以符合 rxjs 6。你将不得不为 Angular 8 做这件事,所以现在最好做。【参考方案2】:

如消息所述,您的项目无法从rxjs-compat 找到成员Observable。 您可以通过在项目文件夹中使用以下命令安装最新版本的 rxjs-compat 来解决此问题:

npm install --save rxjs-compat

【讨论】:

【参考方案3】:

Angular 在运行时尝试在 rxjs 模块中搜索成员 Observable,该模块是 "node_modules" 中的一个模块 文件夹,类似于 "node_modules/rxjs/Observable"。 您只需要使用以下命令安装缺少的模块:

npm install --save rxjs-compat

【讨论】:

【参考方案4】:

rxjs-compat 不是您要寻找的答案,它是一种创可贴。您想更新您的代码以符合 rxjs 6 并从 ng-bootstrap 升级到 ngx-bootstrap。

【讨论】:

以上是关于从 Angular 4 升级到 7 导致问题的主要内容,如果未能解决你的问题,请参考以下文章

升级到 9.0 和 angular 7 后修复 angular-redux/store

角度 - 从材料 5 升级到材料 7,无需 cli

Kendo-angular-dropdown 升级导致错误

从 Angular 7 升级到 Angular 8 后,我的管道测试停止工作:TypeError: undefined is not iterable

如何从 Angular 4 更新/升级到 Angular 5+

为啥升级到 Angular 7 Ecma6 不起作用?