Mehrfachauswahl (MultiSelect)
Mit MultiSelect können Benutzer mehrere Optionen aus einer Dropdown-Liste auswählen. Es unterstützt Öffnen- und Schließen-Zustände, benutzerdefiniertes Wert-Rendering und Tastaturnavigation neben anderen Funktionen.
Verwendung
Abschnitt betitelt „Verwendung“Um MultiSelect zu verwenden, importieren Sie es zusammen mit seiner Item-Komponente. Sie können Eigenschaften wie value, onMultiValueChange, size, label, disabled und viele mehr übergeben, um Verhalten und Erscheinungsbild anzupassen.
Einfaches MultiSelect
Abschnitt betitelt „Einfaches MultiSelect“Ein einfaches Beispiel, das die grundlegende Verwendung der MultiSelect-Komponente demonstriert.
import * as React from "react";import { MultiSelect, MultiSelectItem } from "@firecms/ui";
export default function MultiSelectBasicDemo() { const [selectedValues, setSelectedValues] = React.useState<string[]>([]);
return ( <MultiSelect value={selectedValues} onValueChange={setSelectedValues} label="Basic MultiSelect"> <MultiSelectItem value="option1">Option 1</MultiSelectItem> <MultiSelectItem value="option2">Option 2</MultiSelectItem> <MultiSelectItem value="option3">Option 3</MultiSelectItem> </MultiSelect> );}Benutzerdefiniertes Wert-Rendering
Abschnitt betitelt „Benutzerdefiniertes Wert-Rendering“Dieses Beispiel zeigt, wie das Rendern ausgewählter Werte angepasst wird.
import * as React from "react";import { MultiSelect, MultiSelectItem } from "@firecms/ui";
export default function MultiSelectCustomRenderDemo() { const [selectedValues, setSelectedValues] = React.useState<string[]>([]);
return ( <MultiSelect value={selectedValues} onValueChange={setSelectedValues} label="Custom Render MultiSelect" renderValues={(values) => (values.map((value, index) => <span key={index} style={{ marginRight: 8, background: "#eee", padding: 4 }}> {value} </span>) )}> <MultiSelectItem value="red">Red</MultiSelectItem> <MultiSelectItem value="green">Green</MultiSelectItem> <MultiSelectItem value="blue">Blue</MultiSelectItem> </MultiSelect> );}Umgang mit dem deaktivierten Zustand
Abschnitt betitelt „Umgang mit dem deaktivierten Zustand“Ein Beispiel zur Demonstration einer MultiSelect-Komponente im deaktivierten Zustand.
import * as React from "react";import { MultiSelect, MultiSelectItem } from "@firecms/ui";
export default function MultiSelectDisabledDemo() { return ( <MultiSelect disabled label="Disabled MultiSelect" value={["option1"]} renderValues={(values) => (values.map((value) => <span key={value} style={{ marginRight: 8, background: "#eee", padding: 4 }}> {value} </span>) )}> <MultiSelectItem value="option1">Option 1</MultiSelectItem> <MultiSelectItem value="option2">Option 2 is disabled</MultiSelectItem> <MultiSelectItem value="option3">Option 3 is disabled</MultiSelectItem> </MultiSelect> );}