在 Angular 9 中使用 HttpModule(已弃用)
Using HttpModule (deprecated) with Angular 9
我最近从 Angular 4 更新到 9。我做了以下事情:
- 创建了新的Angular 9 项目,将所有代码复制到angular 9 项目
- 已更新
rxjs
(在必要时添加了管道,删除了 concat)
- 修复了易于修复的警告(未使用的模块变量等)
- 已安装
HttpModule
(已弃用)以消除与 'cannot find HTTP' 相关的错误并让我的项目重回正轨
我现在处于 运行ning ng build / ng serve
不会抛出任何错误的地步,我能够访问本地主机并获取我的登录页面。但是,使用我的旧登录表单不起作用。我不断收到 CORS
错误,尽管我在 express
中设置了以下 headers:
app.use(function(req, res, next) {
res.setHeader('Access-Control-Allow-Origin', '*');
res.setHeader('Access-Control-Allow-Headers', 'Origin, X-Requested-With, Content-Type, Accept');
res.setHeader('Access-Control-Allow-Methods', 'GET, POST, PUT, PATCH, DELETE, OPTIONS');
next();
});
Relevant Package Details: "@angular/core": "~9.1.4" <-- all angular components are at this point, "@angular/common": "~9.1.4", "@angular/http": "^7.2.16", "express": "^4.17.1"
我的问题是:
- 是否可以像我想做的那样 运行 带有
HTTP module
的 angular 9 应用程序?如果有人成功使用它,是否有任何配置更改/是否即插即用?
- CORS 错误是否可能与使用
HTTP module
而不是更新到 httpClient 有关?
- 如果我必须更新到
httpClientModule
,是否有 tool/utility 可以使此更新更容易?
一次升级5个大版本可不是那么容易的。您最好遵循更新后的 guide
至于 HttpModule
,它在 v7 之后被弃用并删除。升级到新的 HttpClientModule
比尝试让删除的东西正常工作要容易得多。
以下是我最终解决升级问题的方法:
- 我使用 angular CLI 创建了一个新项目。
- 我将我所有的代码都移到了新项目中,然后逐一修复所有异常。
我希望有更简单的方法来完成,因为这是一个耗时的过程。然而,最终它成功了,我能够升级整个项目。
我最近从 Angular 4 更新到 9。我做了以下事情:
- 创建了新的Angular 9 项目,将所有代码复制到angular 9 项目
- 已更新
rxjs
(在必要时添加了管道,删除了 concat) - 修复了易于修复的警告(未使用的模块变量等)
- 已安装
HttpModule
(已弃用)以消除与 'cannot find HTTP' 相关的错误并让我的项目重回正轨
我现在处于 运行ning ng build / ng serve
不会抛出任何错误的地步,我能够访问本地主机并获取我的登录页面。但是,使用我的旧登录表单不起作用。我不断收到 CORS
错误,尽管我在 express
中设置了以下 headers:
app.use(function(req, res, next) {
res.setHeader('Access-Control-Allow-Origin', '*');
res.setHeader('Access-Control-Allow-Headers', 'Origin, X-Requested-With, Content-Type, Accept');
res.setHeader('Access-Control-Allow-Methods', 'GET, POST, PUT, PATCH, DELETE, OPTIONS');
next();
});
Relevant Package Details: "@angular/core": "~9.1.4" <-- all angular components are at this point, "@angular/common": "~9.1.4", "@angular/http": "^7.2.16", "express": "^4.17.1"
我的问题是:
- 是否可以像我想做的那样 运行 带有
HTTP module
的 angular 9 应用程序?如果有人成功使用它,是否有任何配置更改/是否即插即用? - CORS 错误是否可能与使用
HTTP module
而不是更新到 httpClient 有关? - 如果我必须更新到
httpClientModule
,是否有 tool/utility 可以使此更新更容易?
一次升级5个大版本可不是那么容易的。您最好遵循更新后的 guide
至于 HttpModule
,它在 v7 之后被弃用并删除。升级到新的 HttpClientModule
比尝试让删除的东西正常工作要容易得多。
以下是我最终解决升级问题的方法:
- 我使用 angular CLI 创建了一个新项目。
- 我将我所有的代码都移到了新项目中,然后逐一修复所有异常。
我希望有更简单的方法来完成,因为这是一个耗时的过程。然而,最终它成功了,我能够升级整个项目。