Menu
Die Menü-Komponente bietet eine vertikale Liste von Optionen. Das Menü wird angezeigt, wenn der Benutzer mit einem Button oder anderen Bedienelementen interagiert.
Wenn Sie ein Dropdown-Menü implementieren möchten, können Sie die <mdui-dropdown>-Komponente verwenden.
Verwendung
Importieren Sie die Komponenten nach Bedarf:
import 'mdui/components/menu.js';
import 'mdui/components/menu-item.js';
Importieren Sie die TypeScript-Typen der Komponenten nach Bedarf:
import type { Menu } from 'mdui/components/menu.js';
import type { MenuItem } from 'mdui/components/menu-item.js';
Beispiel:
<mdui-menu>
<mdui-menu-item>Item 1</mdui-menu-item>
<mdui-menu-item>Item 2</mdui-menu-item>
</mdui-menu>Kompaktes Layout
Fügen Sie das Attribut dense zur <mdui-menu>-Komponente hinzu, um ein kompaktes Layout zu erreichen.
Deaktivierte Menüpunkte
Fügen Sie das Attribut disabled zur <mdui-menu-item>-Komponente hinzu, um einen Menüpunkt zu deaktivieren.
Einfachauswahl unterstützen
Setzen Sie das Attribut selects auf single in der <mdui-menu>-Komponente, um die Einfachauswahl zu aktivieren. Der value-Wert von <mdui-menu> ist dann der value-Wert des aktuell ausgewählten <mdui-menu-item>.
Mehrfachauswahl unterstützen
Setzen Sie das Attribut selects auf multiple in der <mdui-menu>-Komponente, um die Mehrfachauswahl zu aktivieren. Der value-Wert von <mdui-menu> ist dann ein Array der value-Werte der aktuell ausgewählten <mdui-menu-item>.
Hinweis: Im Mehrfachauswahl-Modus ist der value-Wert von <mdui-menu> ein Array, das nur über eine JavaScript-Property gelesen und gesetzt werden kann.
Symbol
Über die Attribute icon und end-icon auf der <mdui-menu-item>-Komponente können Sie links bzw. rechts vom Menüpunkt ein Material Icons-Symbol hinzufügen. Mit dem Attribut end-text können Sie rechts Text hinzufügen. Sie können auch über die Slots icon, end-icon und end-text Elemente hinzufügen.
Wenn Sie links Platz für ein Symbol freihalten möchten, um die Ausrichtung mit anderen Menüpunkten beizubehalten, setzen Sie das Attribut icon auf einen leeren String.
Im Einfach- oder Mehrfachauswahl-Modus können Sie das Symbol für den ausgewählten Zustand mit dem Attribut selected-icon oder dem Slot selected-icon festlegen.
Link
Setzen Sie das Attribut href auf der <mdui-menu-item>-Komponente, um den Menüpunkt in einen Link zu verwandeln. Sie können dann auch die Attribute download, target und rel verwenden.
Untermenü
In der <mdui-menu-item>-Komponente können Sie über den Slot submenu die Elemente für das Untermenü angeben.
In der <mdui-menu>-Komponente können Sie mit dem Attribut submenu-trigger festlegen, wie das Untermenü ausgelöst wird.
Wenn submenu-trigger auf hover gesetzt ist, können Sie mit den Attributen submenu-open-delay und submenu-close-delay in der <mdui-menu>-Komponente die Verzögerung beim Öffnen und Schließen des Untermenüs festlegen.
Benutzerdefinierter Inhalt
In der <mdui-menu-item>-Komponente können Sie den Slot custom verwenden, um den Inhalt des Menüpunkts vollständig anzupassen.
mdui-menu-item API
Eigenschaften
| Attribut | Property | Reflect | Typ | Standard |
|---|---|---|---|---|
value | value | string | - | |
Der Wert des Menüpunkts. | ||||
disabled | disabled | boolean | false | |
Deaktiviert den Menüpunkt. | ||||
icon | icon | string | - | |
Gibt den Namen des Material Icons für das linke Icon an. Alternativ können Sie | ||||
end-icon | endIcon | string | - | |
Gibt den Namen des Material Icons für das rechte Icon an. Alternativ können Sie | ||||
end-text | endText | string | - | |
Gibt den rechten Text an. Alternativ können Sie | ||||
selected-icon | selectedIcon | string | - | |
Gibt den Namen des Material Icons für den ausgewählten Zustand an. Alternativ können Sie | ||||
submenu-open | submenuOpen | boolean | false | |
Öffnet das Untermenü. | ||||
href | href | string | - | |
Die URL für den Link. Wenn gesetzt, wird die Komponente als | ||||
download | download | string | - | |
Lädt die verlinkte URL herunter. Hinweis: Nur verfügbar, wenn | ||||
target | target | '_blank' | '_parent' | '_self' | '_top' | - | |
Legt fest, wo die verlinkte URL geöffnet wird. Mögliche Werte:
Hinweis: Nur verfügbar, wenn | ||||
rel | rel | 'alternate' | 'author' | 'bookmark' | 'external' | 'help' | 'license' | 'me' | 'next' | 'nofollow' | 'noreferrer' | 'opener' | 'prev' | 'search' | 'tag' | - | |
Gibt die Beziehung der verlinkten URL als durch Leerzeichen getrennte Link-Typen an. Mögliche Werte:
Hinweis: Nur verfügbar, wenn | ||||
autofocus | autofocus | boolean | false | |
Gibt an, ob das Element beim Laden der Seite den Fokus erhält. | ||||
tabindex | tabIndex | number | - | |
Die Tab-Reihenfolge des Elements beim Navigieren mit der Tabulatortaste. | ||||
Methoden
| Name | Parameter | Rückgabewert |
|---|---|---|
click | void | |
Simuliert einen Mausklick auf das Element. | ||
focus |
| void |
Setzt den Fokus auf das Element. Der optionale Objektparameter kann eine | ||
blur | void | |
Entfernt den Fokus vom Element. | ||
Ereignisse
| Name |
|---|
focus |
Wird ausgelöst, wenn der Menüpunkt den Fokus erhält. |
blur |
Wird ausgelöst, wenn der Menüpunkt den Fokus verliert. |
submenu-open |
Wird ausgelöst, wenn das Untermenü beginnt, sich zu öffnen. Kann mit |
submenu-opened |
Wird ausgelöst, nachdem das Untermenü geöffnet wurde und die Animationen abgeschlossen sind. |
submenu-close |
Wird ausgelöst, wenn das Untermenü beginnt, sich zu schließen. Kann mit |
submenu-closed |
Wird ausgelöst, nachdem das Untermenü geschlossen wurde und die Animationen abgeschlossen sind. |
mdui-menu API
Eigenschaften
| Attribut | Property | Reflect | Typ | Standard |
|---|---|---|---|---|
selects | selects | 'single' | 'multiple' | - | |
Steuert, ob Menüpunkte ausgewählt werden können. Standardmäßig sind sie nicht auswählbar. Mögliche Werte:
| ||||
value | value | string | string[] | - | |
Der Wert des ausgewählten Hinweis: Das HTML-Attribut akzeptiert immer eine Zeichenfolge und kann nur als Anfangswert verwendet werden, wenn | ||||
dense | dense | boolean | false | |
Gibt an, ob die Menüpunkte ein kompaktes Layout verwenden. | ||||
submenu-trigger | submenuTrigger | 'click' | 'hover' | 'focus' | 'manual' | string | 'click hover' | |
Definiert, wie Untermenüs geöffnet werden. Mehrere durch Leerzeichen getrennte Werte werden unterstützt. Mögliche Werte:
| ||||
submenu-open-delay | submenuOpenDelay | number | 200 | |
Die Verzögerung (in Millisekunden), bevor ein Untermenü bei Mouseover geöffnet wird. | ||||
submenu-close-delay | submenuCloseDelay | number | 200 | |
Die Verzögerung (in Millisekunden), bevor ein Untermenü bei Mouseover geschlossen wird. | ||||
Ereignisse
| Name |
|---|
change |
Wird ausgelöst, wenn sich der ausgewählte Zustand von Menüpunkten ändert. |
Slots
| Name |
|---|
| Standard |
Untermenü-Punkte ( |
CSS Custom Property
| Name |
|---|
--shape-corner |
Der Eckradius der Komponente. Sie können einen bestimmten Pixelwert verwenden, es wird jedoch empfohlen, auf Design-Tokens zu verweisen. |