为了发现并轻松开始使用优秀的二人组Angula r + NestJS,我建议您使用Nx,一个可扩展的 Monorepos 开发工具。
Nx 是一组工具,用于管理monorepo
应用程序集合和您自己开发的库。您可以混合使用不同的框架,如 Angular、React、NestJS、Web 组件......
根据您的需要,它将为您提供一个准备就绪的环境,其中包含一个 Angular 项目和一个 NestJS 项目。
为此,您可以按照Nx.dev 中的这个优秀教程进行操作。
主要步骤是:
创建一个新的 Nx 工作区(这里称为“myrepo”)
npx create-nx-workspace@latest myrepo
cd myrepo
创建一个 Angular 应用程序(这里称为“前端”)
ng add @nrwl/angular # Add Angular Capabilities to the workspace
ng g @nrwl/angular:application frontend # Create an Angular Application
创建一个 NestJS 应用程序(这里称为“api”)
ng add @nrwl/nest # Add Node Capabilities to the workspace
ng g @nrwl/nest:application api --frontend-project frontend
提供这些应用程序(在 2 个单独的外壳中)
ng serve api
ng serve frontend
然后如教程所述,您可以使用它HttpClient
与您的NestJS
应用程序进行交互。
默认情况下: - Angular 将在http://localhost:4200
- NestJS 将在http://localhost:3333
同样默认情况下,proxy.conf.json
在 Angular 应用程序中的 `myrepo/apps/frontend' 中定义了一个文件:
{
"/api": {
"target": "http://localhost:3333",
"secure": false
}
}
这意味着来自浏览器的每个请求都http://localhost:4200/api
将被重定向到http://localhost:3333/api
,因此由NestJS
后端传递。