0

我正在为带有 Nest.js 后端的 Angular 应用程序设置一个新的 Nx 工作区。对于前端,不会只有一个应用程序,而是多个变体,例如每个客户的样式不同,功能略有不同。

在工作区中构建的常用方法libs是,在顶层设置后端(api)和前端(客户端)文件夹,并在内部设置功能,例如:

└── root
    ├── apps
    │   ├── api (nestjs)
    │   └── client (angular)
    └── libs
        ├── api
        │   ├── core
        │   │   └── src
        │   ├── feature-1
        │   │   └── src
        │   └── feature-2
        │       └── src
        ├── client
        │   ├── shell
        │   │   └── src
        │   ├── feature-1
        │   │   └── src
        │   └── feature-2
        │       └── src
        └── shared
            └── src

基本上,我们将后端和前端代码分开。

这也有意义吗,或者有什么好的理由不将每个功能的后端和前端分组?例如:

└── root
    ├── apps
    │   ├── api
    │   └── client
    └── libs
        ├── feature-1
        │   ├── api
        │   │   └── core
        │   │       └── src
        │   ├── client
        │   │   └── ui
        │   │       └── src
        │   └── shared
        │       └── util
        │           └── src
        ├── feature-2
        │   ├── api
        │   │   └── core
        │   │       └── src
        │   ├── client
        │   │   └── ui
        │   │       └── src
        │   └── shared
        │       └── util
        │           └── src
        └── shared
            └── src

很可能,最终我是否保持后端和前端的每个功能的库一致并不重要,但不知何故,将一个功能的所有内容放在一个屋檐下对我来说感觉更好。

client尽管如此,也会有客户端或 api 的库不属于任何功能,因此apilibs.

感谢您对此的任何想法和最佳实践的提示。

4

0 回答 0