ngupgrade 是 Angular 团队提供的工具,用于将 AngularJS 1.x 应用渐进式升级到 Angular 2+。它通过桥接 AngularJS 与 Angular 的 API,帮助开发者平滑迁移项目。
核心功能 🔧
- 模块兼容:自动将 AngularJS 的
angular.module
转换为 Angular 的NgModule
- 依赖注入:保留 AngularJS 的
$injector
机制,同时支持 Angular 的依赖注入系统 - 指令桥接:将 AngularJS 指令(如
ng-click
)映射到 Angular 的属性绑定语法 - 组件化迁移:逐步将 AngularJS 控制器、服务替换为 Angular 组件和服务
使用场景 🌐
- 需要兼容旧版 AngularJS 项目并逐步引入 Angular 新特性
- 希望利用 Angular 的现代架构(如 Ivy、按需加载)优化应用性能
- 避免一次性重构带来的风险,采用渐进式升级策略