如何将 Ionic Cordova 3 迁移到 Ionic Cordova 5?
How to migrate Ionic Cordova 3 to Ionic Cordova 5?
我有 Ionic 3 项目,我必须 升级 到 Ionic 5。
请需要升级项目的最佳方式。
您可以分两步完成。
离子 3 到离子 4
For a complete list of breaking changes from Ionic 3 to Ionic 4,
please refer to the breaking changes document in the Ionic core repo.
在 Ionic 4 中,包名称是 @ionic/angular
。卸载 Ionic 3 并使用新包名称安装 Ionic 4:
npm uninstall ionic-angular
npm install @ionic/angular
将现有应用程序从 Ionic 3 迁移到 4 的一般过程:
- 使用
blank
starter 生成一个新项目(参见 Starting an
应用)
将任何 Angular 服务从 src/providers
复制到 src/app/services
- 服务应包括
{ providedIn: 'root' }
在 @Injectable()
装饰器。详情请见Angularprovider docs.
复制应用程序的其他根级项目(管道、组件等)
请记住,目录结构从
src/components
到 src/app/components
,等等
将全局 Sass 样式从 src/app/app.scss
复制到 src/global.scss
逐页或按功能复制应用程序的其余部分
功能,请牢记以下事项:
- 模拟阴影DOM默认开启
- Page/component Sass 不应再包含在 page/component 标签中,应使用 Angular 的
styleUrls
选项 @Component
装饰师
- RxJS 已从 v5 更新到 v6(参见 RxJS Changes)
- 某些生命周期挂钩应替换为 Angular 的挂钩(参见 Lifecycle Events)
- 可能需要更改标记(迁移工具可用,请参阅 Markup Changes)
在很多情况下,使用 Ionic CLI 生成一个新对象然后复制代码也能很好地工作。例如:ionic g service weather
将创建一个 shell Weather
服务和测试。然后可以根据需要从旧项目中复制代码并稍作修改。这有助于确保遵循正确的结构。这也会为单元测试生成 shells。
离子 4 到离子 5
将应用程序从 4.x 迁移到 5.x 需要对 API 属性、CSS utilities 和安装的软件包依赖项进行一些更新。
有关从 4.x 到 5.x 的重大更改的完整列表,请参阅 Ionic 核心存储库中的 the breaking changes document。
对于基于 Angular 的项目,您可以简单地 运行:
npm install @ionic/angular@latest @ionic/angular-toolkit@latest --save
有关更多信息和说明,请查看 Migration Guide。
我有 Ionic 3 项目,我必须 升级 到 Ionic 5。 请需要升级项目的最佳方式。
您可以分两步完成。
离子 3 到离子 4
For a complete list of breaking changes from Ionic 3 to Ionic 4, please refer to the breaking changes document in the Ionic core repo.
在 Ionic 4 中,包名称是 @ionic/angular
。卸载 Ionic 3 并使用新包名称安装 Ionic 4:
npm uninstall ionic-angular
npm install @ionic/angular
将现有应用程序从 Ionic 3 迁移到 4 的一般过程:
- 使用
blank
starter 生成一个新项目(参见 Starting an 应用) 将任何 Angular 服务从
src/providers
复制到src/app/services
- 服务应包括
{ providedIn: 'root' }
在@Injectable()
装饰器。详情请见Angularprovider docs.
- 服务应包括
复制应用程序的其他根级项目(管道、组件等) 请记住,目录结构从
src/components
到src/app/components
,等等将全局 Sass 样式从
src/app/app.scss
复制到src/global.scss
逐页或按功能复制应用程序的其余部分 功能,请牢记以下事项:
- 模拟阴影DOM默认开启
- Page/component Sass 不应再包含在 page/component 标签中,应使用 Angular 的
styleUrls
选项@Component
装饰师 - RxJS 已从 v5 更新到 v6(参见 RxJS Changes)
- 某些生命周期挂钩应替换为 Angular 的挂钩(参见 Lifecycle Events)
- 可能需要更改标记(迁移工具可用,请参阅 Markup Changes)
在很多情况下,使用 Ionic CLI 生成一个新对象然后复制代码也能很好地工作。例如:ionic g service weather
将创建一个 shell Weather
服务和测试。然后可以根据需要从旧项目中复制代码并稍作修改。这有助于确保遵循正确的结构。这也会为单元测试生成 shells。
离子 4 到离子 5
将应用程序从 4.x 迁移到 5.x 需要对 API 属性、CSS utilities 和安装的软件包依赖项进行一些更新。
有关从 4.x 到 5.x 的重大更改的完整列表,请参阅 Ionic 核心存储库中的 the breaking changes document。
对于基于 Angular 的项目,您可以简单地 运行:
npm install @ionic/angular@latest @ionic/angular-toolkit@latest --save
有关更多信息和说明,请查看 Migration Guide。