直接来自 Angular Guide工作区和项目文件结构 - 多个项目
多个项目
多项目工作区适用于对所有 Angular 项目(“monorepo”模型)使用单个存储库和全局配置的企业。多项目工作区还支持库开发。
设置多项目工作区
如果您打算在一个工作区中有多个项目,则可以在创建工作区时跳过初始应用程序生成,并为工作区指定一个唯一名称。以下命令使用所有工作区范围的配置文件创建一个工作区,但没有根级应用程序。
ng new my-workspace --createApplication="false"
然后,您可以生成名称在工作区中唯一的应用程序和库。
cd my-workspace
ng generate application my-first-app
多项目文件结构
projects/
第一个显式生成的应用程序与工作区中的所有其他项目一起进入该文件夹。新生成的库也添加在projects/
. 通过这种方式创建项目时,工作空间的文件结构与工作空间配置文件的结构完全一致,angular.json
.
my-workspace/
... (workspace-wide config files)
projects/ (generated applications and libraries)
my-first-app/ --(an explicitly generated application)
... --(application-specific config)
e2e/ ----(corresponding e2e tests)
src/ ----(e2e tests source)
... ----(e2e-specific config)
src/ --(source and support files for application)
my-lib/ --(a generated library)
... --(library-specific config)
src/ --source and support files for library)
库项目文件
当您使用 CLI(使用命令,例如ng generate library my-lib
)生成库时,生成的文件将进入工作区的 projects/ 文件夹。有关创建您自己的库的更多信息,请参阅创建库。
库(与应用程序及其关联的 e2e 项目不同)有自己的package.json
配置文件。
在该projects/
文件夹下,该my-lib
文件夹包含您的库代码。
它继续在表格中描述库项目文件及其用途。我建议进一步阅读上面的文档和相关链接,因为它有据可查,可能会让您快速启动并运行。
要在不同的端口上运行多个 Angular 应用程序,只需打开另一个终端并ng serve --port 1234
为每个应用程序运行。请参阅Angular(2) - 使用 CLI 运行两个项目