基于 Web Components 的 Angular 模块化应用架构
介绍一个 Angular 应用框架,该框架使用 Web Components 来构建模块化的应用程序。
技术栈:
- Angular 9
- Web Components
- ngx-build-plus (用于 Web Components 的 JS 打包)
架构概述:
该应用框架包含一个主应用(Portal)和多个子模块/客户端(例如,Client-A,Client-B)。每个子模块/客户端都被构建为一个独立的 Web Component,并通过路由机制加载到主应用中。
关键特性:
- 非 Monorepo 结构
- 主应用和每个 Web Component 模块都拥有独立的路由出口
- 使用
routerLink
进行导航 - 支持简洁的 URL 路径(不使用哈希路由)
项目结构:
- portal/
- client-a/
- client-b/
本地运行:
# 分别在三个终端中运行
cd portal && npm install && ./portal.sh
cd client-a && npm install && ./client-a.sh
cd client-b && npm install && ./client-b.sh
注意:
项目未使用 src/app
作为根目录,而是使用 src/portal
, src/client-a
, src/client-b
等,以避免 Webpack 在构建过程中出现类名冲突。
375.69KB
文件大小:
评论区