从 Ionic 6 升级到 7
备注
本指南假定您已将应用更新到 Ionic 6 的最新版本。在开始本指南之前,请确保您已遵循升级到 Ionic 6 指南。
破坏性变更
有关从 Ionic 6 到 Ionic 7 的完整破坏性变更列表,请参阅 Ionic Framework 仓库中的破坏性变更文档。
开始之前
Angular
- Ionic 7 支持 Angular 14+。请按照 Angular 更新指南 更新到最新版本的 Angular。
- 如果您的项目使用了 rxjs,Ionic 7 要求最低 rxjs 版本为 7.5.0:
npm install rxjs@7.5.0
- 更新到最新版本的 Ionic 7:
npm install @ionic/angular@7
如果您正在使用 Ionic Angular Server 和 Ionic Angular Toolkit,请确保也更新它们:
npm install @ionic/angular@7 @ionic/angular-server@7 @ionic/angular-toolkit@9
注意:
@ionic/angular-toolkit@9要求最低 Angular 15 版本。如果您仍在使用 Angular 14,则可以跳过更新@ionic/angular-toolkit@9。
React
- Ionic 7 支持 React 17+。更新到最新版本的 React:
npm install react@latest react-dom@latest
- 更新到最新版本的 Ionic 7:
npm install @ionic/react@7 @ionic/react-router@7
Vue
- Ionic 7 支持 Vue 3.0.6+。更新到最新版本的 Vue:
npm install vue@latest vue-router@latest
- 更新到最新版本的 Ionic 7:
npm install @ionic/vue@7 @ionic/vue-router@7
Core
- 更新到最新版本的 Ionic 7:
npm install @ionic/core@7
更新您的代码
浏览器支持
Ionic 支持的浏览器列表已更改。请查看浏览器支持指南以确保您的应用部署到支持的浏览器。
如果您有 browserslist 或 .browserslistrc 文件,请将其更新为以下内容:
Chrome >=79
ChromeAndroid >=79
Firefox >=70
Edge >=79
Safari >=14
iOS >=14
类型
ActionSheetAttributes、AlertAttributes、AlertTextareaAttributes、AlertInputAttributes、LoadingAttributes、ModalAttributes、PickerAttributes、PopoverAttributes和ToastAttributes已被移除。开发者应改用{ [key: string]: any }。
Checkbox
- 将所有
--background和--background-checkedCSS 变量的使用分别重命名为--checkbox-background和--checkbox-background-checked。
Datetime
- 移除所有将
value属性设置为空字符串('')的代码。 - 移除所有访问
value属性上时区信息的代码。Datetime 不管理时区,因此提供的任何时区信息都将被忽略。
Input
- 将所有访问
ionInput事件detail载荷的代码从event.detail更新为event.detail.value,因为 detail 载荷现在是一个包含 value 和 event 的对象。