Forms
useDropdownField
Composable interno aggregatore per componenti dropdown — raggruppa icone, componenti condivisi e re-export dei composables dropdown.
Composable interno — aggregatore per ridurre il numero di import nei componenti dropdown (
Select,MultiSelect,TreeSelect, ecc.).
Firma TypeScript
export function useDropdownField(props: FormIconsProps): UseDropdownFieldResult
export interface UseDropdownFieldResult {
icons: ComputedRef<ComponentIcons>;
resolvedLoadingIcon: ComputedRef<string>;
resolvedClearIcon: ComputedRef<string>;
FormLabel: typeof FormLabelComponent;
FormHelperText: typeof FormHelperTextComponent;
}
Parametri
| Parametro | Tipo | Descrizione |
|---|---|---|
props | FormIconsProps | Props del componente relative alle icone (loadingIcon, clearIcon) |
Valore di Ritorno
| Proprietà | Tipo | Descrizione |
|---|---|---|
icons | ComputedRef<ComponentIcons> | Configurazione icone globale |
resolvedLoadingIcon | ComputedRef<string> | Icona loading risolta (prop > default config) |
resolvedClearIcon | ComputedRef<string> | Icona clear risolta (prop > default config) |
FormLabel | Component | Componente FormLabel condiviso |
FormHelperText | Component | Componente FormHelperText condiviso |
Re-export
Il modulo re-esporta per convenienza:
useDropdownLifecycledacommon/useDropdownLifecycleuseDropdownPositiondacommon/useDropdownPositionuseListNavigationdacommon/useListNavigationnormalizeOptiondautils/normalizeOption
Esempio
// In un componente Select
import { useDropdownField } from '@pzeta/vue-components/internal'
const { icons, resolvedLoadingIcon, resolvedClearIcon, FormLabel, FormHelperText } =
useDropdownField(props)
Note
- Questo composable e principalmente un aggregatore di convenienza — riduce 7+ import a 1 per ogni componente dropdown.
- La risoluzione dell'icona usa priorita: prop specifica del componente > configurazione globale via
ConfigPlugin> icona di default.