如何前端脚手架 “泼出去的水” 的问题
#前端工程化
目录
总结
- 原因
- ==同步==问题
- 生成项目后,与模板完全脱离,无法获得模板更新
- 解决方案
- Git Submodule
- 配置中心化方案
- 插件化架构
- 脚手架与模板解耦
- 远端加载
- 前端资产运营
1. 痛点
传统脚手架存在的问题
- 项目创建后与模板完全解耦
- 模板升级无法同步到已创建项目
- 项目配置难以统一管理
- 最佳实践无法及时==同步==
# 传统方式
vue create my-project
# 或
create-react-app my-project
# 生成项目后,与模板完全脱离,无法获得模板更新
2. 解决方案
- 基于 Git Submodule 的方案
- 写一个脚本
npm run sync-template
来用于更新模板
- 写一个脚本
- 基于 npm 包的方案
- 更新包版本
- 基于 Monorepo 多包管理的方案
- 配置中心化方案,注册配置更新,推送更新,订阅通知等
- 技术难度稍高
- 插件化架构
- 动态加载组件
- 更新插件等
- 脚手架与模板解耦
- 模板注册中心
- 远端动态加载模板
- 增量更新策略?
- 差异化更新
- 作为前端资产运营?
- 统计脚手架使用情况
- 模板使用情况
- 使用情况跟踪
- 更新日志等
3. 其他
- 模板分层
template/
├── core/ # 核心配置(强制更新)
├── recommended/ # 推荐配置(可选更新)
└── custom/ # 自定义配置(本地维护)
- 更新机制
- 配置合并