我使用 VS2017/2019 和 .NET Core 2.1 来创建Angular
或React
应用程序。Angular-CLI
或create-react-app
用于设置一切。以下所有内容都与开发阶段有关:
当我们构建我们的 .NET 项目时,IIS express
会启动一个服务器来容纳我们的应用程序,我们将其命名为localhost:19500。
在启动前端部分(Angular 或 React)的Webpack Dev server
同时,也会启动一个,用于容纳 Webpack 创建的 bundles 中的前端编译代码;我们可以通过检查(通过 Chrome 开发工具)index.html
包含这些包来看到这一点。为了完全理解,这些捆绑包在物理上并不位于任何地方;它们被加载到内存中并且可以通过 Webpack Dev Server 访问。如果我们独立运行前端应用程序,我们可以通过localhost:4200 (Angular) 或localhost:3000 (React)访问这个 Dev 服务器。所以,我的问题是:
我上面的分析对吗?如果我们启动 IIS 服务器,是否有任何 Webpack Dev Server 服务于前端或前者服务于前端包?
如果有 Webpack Dev 服务器,那么我们有两台服务器,我们应该解决 CORS 问题。如果没有,IIS 如何处理诸如Hot Module Replacement(HMR)
?中间件的确切作用是UseAngularCliServer
什么?