Node.js 和 Angular 是如何连接在一起的?

How do Node.js and Angular connect together?

我一般都能创建 Angular 应用程序,但我不明白如何 Angular 和 Node.js 连接在一起。

即使在本地环境中,您也需要启动两件事:

那么两者是怎么联系起来的呢?您是否通过 Node.js 呈现 Angular 应用程序?您是否像这样渲染应用程序:

或者像这样:

但是还有路由问题,你是通过Node.js和app.get('/')来定义路由吗? 或通过 Angular 使用:

const routes: Routes = [
  { path: '', component: HomeComponent}
];

ng serve & node app.js 将同时启动这两个脚本。

Angular 和 NodeJS 应用程序通过 HTTP 连接,其中 NodeJS 是后端,Angular 是前端。

ng serve 是本地环境中服务器 Angular 应用程序的命令,但是当您在生产环境中部署 Angular 应用程序时,首先您必须 build Angular 应用程序并使用 Nginx 或其他工具提供目标文件夹..

node app.js 是您用来启动 NodeJS 服务器(在您的情况下)的命令,它将开始侦听某些 HTTP 端口(如果您正确使用 NodeJS Express)

两者通过HTTP连接的例子如下: Angular 应用程序向 NodeJS 后端发出 HTTP 请求,NodeJS 服务器响应该 HTTP 请求以将数据发送回 Angular 应用程序。

关于路由,Angular 是一个单页应用程序 (SPA),因此它可以像您展示的那样处理自己的路由请求,这就是您网站(前端)的大部分内容次。您的 NodeJS 应用程序中的路由指的是您的 REST API 路由,就像您的 NodeJS 服务器支持的功能一样。

我认为您应该阅读如何在 NodeJS 中实现 REST api,您会找到关于它的非常详细的指南,并在 Angular

中创建单页应用程序