Skip to main content
Version: v6

ion-menu

shadow

The Menu component is a navigation drawer that slides in from the side of the current view. By default, it slides in from the left, but the side can be overridden. The menu will be displayed differently based on the mode, however the display type can be changed to any of the available menu types. The menu element should be a sibling to the root content element. There can be any number of menus attached to the content. These can be controlled from the templates, or programmatically using the MenuController.

Basic Usage

The ion-menu-toggle component can be used to create custom button that can open or close the menu.

The type property can be used to customize how menus display in your application.

Theming

CSS Shadow Parts

Interfaces

While not required, this interface can be used in place of the CustomEvent interface for stronger typing with Ionic events emitted from this component.

interface MenuCustomEvent<T = any> extends CustomEvent {
detail: T;
target: HTMLIonMenuElement;
}

Properties

contentId

Descriptionメインコンテンツの id です。ルータを使用する場合は、通常 ion-router-outlet となります。ルータを使用しない場合は、通常、メインビューの ion-content となります。これは ion-menu 内の ion-content の ID ではありません。
Attributecontent-id
Typestring | undefined
Defaultundefined

disabled

Descriptiontrueの場合、メニューは無効化される。
Attributedisabled
Typeboolean
Defaultfalse

maxEdgeStart

Descriptionドラッグでメニューを開く際のエッジのしきい値です。この値を超えてドラッグ/スワイプが行われた場合、メニューはトリガーされない。
Attributemax-edge-start
Typenumber
Default50
DescriptionメニューのIDです。
Attributemenu-id
Typestring | undefined
Defaultundefined

side

Descriptionメニューがビューのどの側に配置されるべきか。
Attributeside
Type"end" | "start"
Default'start'

swipeGesture

Descriptiontrueの場合、スワイプによるメニュー操作が有効になる。
Attributeswipe-gesture
Typeboolean
Defaulttrue

type

Descriptionメニューの表示形式を指定します。利用可能なオプション。overlay", "reveal", "push"`.
Attributetype
Typestring | undefined
Defaultundefined

Events

NameDescription
ionDidCloseメニューが閉じられたときに発します。
ionDidOpenメニューが開いているときに発行されます。
ionWillCloseメニューが閉じられようとするときに発します。
ionWillOpenメニューが開かれようとするときに発します。

Methods

close

Descriptionメニューを閉じる。メニューが既に閉じられていたり、閉じることができない場合は、falseを返します。
Signatureclose(animated?: boolean) => Promise<boolean>

isActive

Descriptionメニューがアクティブであれば true を返します。 メニューがアクティブな状態とは、メニューを開いたり閉じたりできる状態、つまり有効な状態であり、ion-split-paneの一部でない状態であることを意味します。
SignatureisActive() => Promise<boolean>

isOpen

Descriptionメニューが開いている場合は true を返します。
SignatureisOpen() => Promise<boolean>

open

Descriptionメニューを開く。メニューが既に開いているか、開くことができない場合は、falseを返します。
Signatureopen(animated?: boolean) => Promise<boolean>

setOpen

Descriptionボタンを開いたり閉じたりします。操作が正常に完了しない場合は false を返します。
SignaturesetOpen(shouldOpen: boolean, animated?: boolean) => Promise<boolean>

toggle

Descriptionメニューを切り替えます。メニューが既に開かれている場合は閉じようとし、そうでない場合は開こうとします。操作が正常に完了しない場合は、falseを返します。
Signaturetoggle(animated?: boolean) => Promise<boolean>

CSS Shadow Parts

NameDescription
backdropメニューを開いているときに、メインコンテンツの上に表示される背景です。
containerメニューの内容を格納するコンテナです。

CSS Custom Properties

NameDescription
--backgroundメニューの背景
--heightメニューの高さ
--max-heightメニューの最大の高さ
--max-widthメニューの最大幅
--min-heightメニューの高さの最小値
--min-widthメニューの最小幅
--widthメニューの幅

Slots

No slots available for this component.