ion-menu
Menuコンポーネントは、現在のビューの横からスライドするナビゲーションパネルです。 デフォルトでは左からスライドしますが、サイドはオーバーライドできます。 Menuの表示はmodeによって異なりますが、表示するtypeはmenuのtypeによって変更することができます。 menu要素は、root content要素と同じ深度である必要があります。 コンテンツにつけるMenuの数に制限はありません。 これらはテンプレートから、またはプログラムでMenuControllerを使用して制御できます。
基本的な使い方
Menu Toggle
ion-menu-toggle コンポーネントを使用して、メニューを開いたり閉じたりするカスタムボタンを作成することができます。
Menu Types
type
プロパティは、アプリケーションでのメニューの表示方法をカスタマイズするために使用することができます。
テーマ
CSS Shadow Parts
Interfaces
MenuCustomEvent
必須ではありませんが、このコンポーネントから発行される Ionic イベントでより強く型付けを行うために、CustomEvent
インターフェースの代わりにこのインターフェースを使用することが可能です。
interface MenuCustomEvent<T = any> extends CustomEvent {
detail: T;
target: HTMLIonMenuElement;
}
プロパティ
contentId
Description | メインコンテンツの id です。ルータを使用する場合は、通常 ion-router-outlet となります。ルータを使用しない場合は、通常、メインビューの ion-content となります。これは ion-menu 内の ion-content の ID ではありません。 |
Attribute | content-id |
Type | string | undefined |
Default | undefined |
disabled
Description | true の場合、メニューは無効化される。 |
Attribute | disabled |
Type | boolean |
Default | false |
maxEdgeStart
Description | ドラッグでメニューを開く際のエッジのしきい値です。この値を超えてドラッグ/スワイプが行われた場合、メニューはトリガーされない。 |
Attribute | max-edge-start |
Type | number |
Default | 50 |
menuId
Description | メニューのIDです。 |
Attribute | menu-id |
Type | string | undefined |
Default | undefined |
side
Description | メニューがビューのどの側に配置されるべきか。 |
Attribute | side |
Type | "end" | "start" |
Default | 'start' |
swipeGesture
Description | true の場合、スワイプによるメニュー操作が有効になる。 |
Attribute | swipe-gesture |
Type | boolean |
Default | true |
type
Description | メニューの表示形式を指定します。利用可能なオプション。overlay", "reveal", "push"`. |
Attribute | type |
Type | string | undefined |
Default | undefined |
イベント
Name | Description |
---|---|
ionDidClose | メニューが閉じられたときに発します。 |
ionDidOpen | メニューが開いているときに発行されます。 |
ionWillClose | メニューが閉じられようとするときに発します。 |
ionWillOpen | メニューが開かれようとするときに発します。 |
メソッド
close
Description | メニューを閉じる。メニューが既に閉じられていたり、閉じることができない場合は、false を返します。 |
Signature | close(animated?: boolean) => Promise<boolean> |
isActive
Description | メニューがアクティブであれば true を返します。 メニューがアクティブな状態とは、メニューを開いたり閉じたりできる状態、つまり有効な状態であり、ion-split-pane の一部でない状態であることを意味します。 |
Signature | isActive() => Promise<boolean> |
isOpen
Description | メニューが開いている場合は true を返します。 |
Signature | isOpen() => Promise<boolean> |
open
Description | メニューを開く。メニューが既に開いているか、開くことができない場合は、false を返します。 |
Signature | open(animated?: boolean) => Promise<boolean> |
setOpen
Description | ボタンを開いたり閉じたりします。操作が正常に完了しない場合は false を返します。 |
Signature | setOpen(shouldOpen: boolean, animated?: boolean) => Promise<boolean> |
toggle
Description | メニューを切り替えます。メニューが既に開かれている場合は閉じようとし、そうでない場合は開こうとします。操作が正常に完了しない場合は、false を返します。 |
Signature | toggle(animated?: boolean) => Promise<boolean> |
CSS Shadow Parts
Name | Description |
---|---|
backdrop | メニューを開いているときに、メインコンテンツの上に表示される背景です。 |
container | メニューの内容を格納するコンテナです。 |
CSSカスタムプロパティ
Name | Description |
---|---|
--background | メニューの背景 |
--height | メニューの高さ |
--max-height | メニューの最大の高さ |
--max-width | メニューの最大幅 |
--min-height | メニューの高さの最小値 |
--min-width | メニューの最小幅 |
--width | メニューの幅 |
Slots
No slots available for this component.