Updating from Ionic 6 to 7
This guide assumes that you have already updated your app to the latest version of Ionic 6. Make sure you have followed the Upgrading to Ionic 6 Guide before starting this guide.
Ionic 6 から Ionic 7 への破壊的変更の完全なリストについては、Ionic Framework リポジトリの破壊的変更ドキュメントを参照してください。
はじめ方
Angular
- Ionic 7 は Angular 14+に対応しています。 Angular Update Guide に従い、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
Note:
@ionic/angular-toolkit@9requires a minimum of Angular 15. If you are still on Angular 14, then you can skip updating to@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
- CSS 変数
--backgroundと--background-checkedを使用している場合は、それぞれ--checkbox-backgroundと--checkbox-background-checkedにリネームします。
Datetime
valueプロパティに空文字列('')を設定するコードを削除しますvalueプロパティのタイムゾーン情報にアクセスするコードをすべて削除します。Datetime はタイムゾーンを管理しないので、提供されたタイムゾーン情報はすべて無視されます。
Input
detailペイロードが値とイベントを含むオブジェクトになったので、ionInputイベントのdetailペイロードにアクセスするコードをevent.detailからevent.detail.valueに更新します。
Modal
- Remove any usage of the
swipeToCloseproperty. Card modals are swipeable by default, so you can removeswipeToCloseif you want your card modal to remain swipeable. Use the canDismiss property if you want to prevent a modal from dismissing. - Remove any code that sets the
canDismissproperty toundefined. ThecanDismissproperty now defaults totrue, so this code is no longer needed.
Picker
ion-picker-columnのrefreshにアクセスするコードをすべて削除する。代わりにion-pickerのcolumnsプロパティを使用してビューをリフレッシュする必要があります。
Searchbar
detailペイロードが値とイベントを含むオブジェクトになったので、ionInputイベントのdetailペイロードにアクセスするコードをevent.detailからevent.detail.valueに更新します。
Segment
- Remove any code that sets the
valueproperty tonull. Developers should use either''orundefinedinstead.
Slides
ion-slides、ion-slide、および関連する型を削除する。これらのコンポーネントは、Swiper.js を直接使用するために削除されました。この移行については、以下のガイドに詳細が記載されています。
Angular Migration Guide
React Migration Guide
Vue Migration Guide
Textarea
detailペイロードが値とイベントを含むオブジェクトになったので、ionInputイベントのdetailペイロードにアクセスするコードをevent.detailからevent.detail.valueに更新します。
Toggle
- CSS 変数
--backgroundと--background-checkedを使用している場合は、それぞれ--track-backgroundと--track-background-checkedにリネームします。
Virtual Scroll
ion-virtual-scrollとそれに関連する型を削除する。このコンポーネントは、JavaScript Frameworks が提供する仮想スクロールのソリューションを使用するために削除されました。この移行については、以下のガイドに詳細が記載されています。
Angular Migration Guide
React Migration Guide
Vue Migration Guide
アップグレードに助けが必要?
必ずIonic 7 破壊的変更ガイドを確認してください。開発者が把握しておく必要がある可能性のあるデフォルトのプロパティや CSS 変数の値に関する変更がいくつかあります。このページには、ユーザーの操作が必要な破壊的変更のみが記載されています。
アップグレードのヘルプが必要な場合は、Ionic Forumにスレッドを投稿してください。