c# - 将 ASP.Net Core Angular 模板从版本 8 更新到 9
问题描述
我读的书从一开始就有第 9 版(ASP.NET Core 3 和 Angular 9 - 第三版),并且还使用了 angular 模板。我安装了 vs 2019 的最新 Visual Studio 更新。
Angular 项目的模板版本为 8。我读的书是版本 9。所以我尝试更新我的 Angular 版本。
ng update
给我
@angular/cli 8.3.14 -> 9.0.3 ng update @angular/cli
@angular/core 8.2.12 -> 9.0.3 ng update @angular/core
@nguniversal/aspnetcore-engine 8.1.1 -> 8.2.6 ng update @nguniversal/aspnetcore-engine
我更新了 cli 和核心。但是当我尝试更新第三个包时,我得到:
C:\Users\user\Test\ClientApp>ng update @nguniversal/aspnetcore-engine
Using package manager: 'npm'
Collecting installed dependencies...
Found 39 dependencies.
Package '@nguniversal/aspnetcore-engine' is not a dependency.
无论如何我都尝试运行该应用程序,但我得到了 HTML
Cannot GET /
或带有以下内容的异常页面:
System.TimeoutException: The Angular CLI process did not start listening for requests within the timeout period of 0 seconds. Check the log output for error information.
at Microsoft.AspNetCore.SpaServices.Extensions.Util.TaskTimeoutExtensions.WithTimeout[T](Task`1 task, TimeSpan timeoutDelay, String message)
at Microsoft.AspNetCore.SpaServices.Extensions.Proxy.SpaProxy.PerformProxyRequest(HttpContext context, HttpClient httpClient, Task`1 baseUriTask, CancellationToken applicationStoppingToken, Boolean proxy404s)
at Microsoft.AspNetCore.Builder.SpaProxyingExtensions.<>c__DisplayClass2_0.<<UseProxyToSpaDevelopmentServer>b__0>d.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at Microsoft.AspNetCore.Diagnostics.DeveloperExceptionPageMiddleware.Invoke(HttpContext context)
解决方案
将 Angular 从 v8 升级到 v9 时,“ng update”会在 main.ts 中添加这一行
export { renderModule, renderModuleFactory } from '@angular/platform-server';
删除它,上面的错误就消失了,检查这个链接
推荐阅读
- go - 在 for 循环中使用函数中的变量 - Golang
- symfony - 来自 symfony 4 的 webpack/encore 和 socket.io
- email - mutt or mail - 回复电子邮件或从电子邮件回复
- sql - 从历史表的一行中获取postgres / redshift的最小和最大日期?
- linux - Windows上文件扩展名的问题
- ruby-on-rails-5 - RSpec:如何在不同的数据库上运行测试
- c# - 按下按钮时停止事件发生
- sql - SQLServer pid 杀死
- c# - Aspnet Core DI + EF:“连接未关闭。连接的当前状态为正在连接”
- typescript - 文件不在“rootDir”下。rootDir 应包含所有源文件