如何最好地设计我的 Angular2+ 投资组合基础架构

How to best design my Angular2+ portfolio infrastructure

我一直在创建一个作品集网站,但不知道如何最好地设计我的主页的基础结构以及示例项目。

我正在为我的 3 个示例项目使用 Angular,但不确定将代码放在哪里。

这些项目只是为了招聘经理或招聘人员 view/use 的作品集而构建的。

我的问题是我的项目应用程序的代码与我的主页相关。


方法 #1:单个应用程序

最好将它们作为文件夹放在单个 angular 应用程序和后端中吗?例如,我的 Angular 代码的结构如下:

使用此方法的示例 url:mysite.com/project1


方法 #2:单独的应用程序

或者最好将它们分成三个单独的 Angular 应用程序和三个单独的后端?

然后我可以将它们部署为子域。例如:project1.mysite.com


我认为管理多合一方法比尝试展示卓越的 IT 托管技能更容易,但我有兴趣在这里学习针对我的案例的最佳实践。

感谢您的帮助!如果有什么办法可以解决这个问题,请告诉我。

工作区结构

最佳做法是对多个项目使用单个工作区。

单项目工作区

通常,当您第一次使用 Angular 开始并使用 ng new CLI 命令(例如 ng new my-app)创建一个新项目时,您最终得到的工作区仅支持一个项目,以及这样的结构:

 - src
   - app
     - app.component.ts
     - ...
   - ...
 - angular.json
 - package.json
 - ...

... 其中 app 是默认(也是唯一)项目。

多项目工作区

您需要做的是,创建一个空工作区,然后(根据需要)一个一个地添加每个项目。

new new my-workspace --createApplication="false"

这将创建一个没有任何项目的空白 Angular 工作区。

当您开始一个新项目时,您可以在工作区文件夹中使用以下命令将它们添加到工作区:

new generate application first-app

这给你一个像这样的结构:

 - my-workspace
   - ...
   - projects
     - first-app
     - second-app
   - angular.json
   - ...

每个 project/app 的结构如下:

 - src
  - app
  - assets
  - ...
 - e2e
   - ...

有关最佳做法,请参阅此页面:https://angular.io/guide/file-structure#multiple-projects

托管

在托管方面,您提到的布局并没有真正映射到您最终托管项目的方式(即子文件夹与子域)。您不会上传整个项目工作区,就好像它是服务器端(例如 PHP/JSP)应用程序一样。

由于 Angular 应用程序是 SPA(单页应用程序),最终您构建应用程序,并将静态文件上传到服务器。您可以选择从子文件夹或子域提供这些静态文件。