enes

Tree View

Tree View muestra datos jerárquicos en una lista anidada donde cada elemento puede expandirse, marcarse o seleccionarse. Los elementos se componen con los componentes TreeViewItem y TreeViewItemContent; el árbol no acepta una propiedad data.

  • Fruits
    • Apple
    • Banana
  • Vegetables

Este componente está disponible en acceso anticipado.

La API, las funciones y el comportamiento del componente están sujetos a cambios importantes. Recomendamos encarecidamente no usar este componente en entornos de producción por el momento.

Uso

<script>
	import { TreeView, TreeViewItem, TreeViewItemContent } from 'fluentui-svelte';
</script>

<TreeView selectionMode="multiple">
	<TreeViewItem id="fruits" type="branch">
		<TreeViewItemContent>Fruits</TreeViewItemContent>
		<TreeView>
			<TreeViewItem id="apple">
				<TreeViewItemContent>Apple</TreeViewItemContent>
			</TreeViewItem>
			<TreeViewItem id="banana" disabled>
				<TreeViewItemContent>Banana</TreeViewItemContent>
			</TreeViewItem>
		</TreeView>
	</TreeViewItem>
	<TreeViewItem id="vegetables">
		<TreeViewItemContent>Vegetables</TreeViewItemContent>
	</TreeViewItem>
</TreeView>

Anidar un TreeView dentro de un TreeViewItem de tipo='branch' crea un subárbol. Usa openItems / checkedItems en el TreeView raíz (bindable) para controlar programáticamente el estado abierto y marcado.

Checkable Items

Set selectionMode="multiple" to render checkboxes on selectable items.

  • Fruits
    • Apple
    • Banana

Controlling Open and Checked State

Use the bindable openItems and checkedItems props on the root TreeView to control state programmatically.

  • Fruits
    • Apple
    • Banana

Propiedades del componente (TreeView)

NameTypeDescription
refHTMLUListElementReferencia DOM enlazable del elemento ul raíz.
size'small' | 'medium' | 'large'Tamaño visual del árbol. El valor predeterminado es 'medium'.
navigationMode'tree' | 'treegrid'Modo de navegación por teclado. El valor predeterminado es 'tree'.
selectionMode'single' | 'multiple'Modo de selección para elementos marcables. El valor predeterminado es 'multiple'.
openItemsstring[] | SvelteSet<string>Lista o conjunto enlazable de ids de elementos abiertos. Usa SvelteSet cuando se proporciona un virtualizer.
checkedItemsstring[] | SvelteSet<string>Lista o conjunto enlazable de ids de elementos marcados. Usa SvelteSet cuando se proporciona un virtualizer.
onOpenChange(e: Event, openItems: string[]) => voidCallback que se ejecuta cuando un elemento se expande o se contrae.
onCheckedChange(e: Event, checkedItems: string[]) => voidCallback que se ejecuta cuando un elemento se marca o se desmarca.
virtualizerTreeViewVirtualizerAdaptador opcional para bibliotecas de windowing o listas virtuales. Cuando se proporciona, solo la parte renderizada está en el DOM.
childrenSnippetLos elementos hijos TreeViewItem del árbol.

Propiedades del componente (TreeViewItem)

NameTypeDescription
idstringIdentificador único del elemento. Obligatorio para el seguimiento del estado abierto y marcado.
type'item' | 'branch'Indica si el elemento es una hoja ('item') o una rama que puede contener un TreeView anidado.
refHTMLLIElementReferencia DOM enlazable del elemento li.
valuestring | numberValor opcional asociado al elemento.
textstringEtiqueta de texto accesible opcional usada por el árbol.
openbooleanEstado abierto enlazable para elementos con type='branch'.
checkedbooleanEstado marcado enlazable para elementos seleccionables.
indeterminatebooleanIndica si el elemento está en un estado de marcado indeterminado.
disabledbooleanDeshabilita el elemento.
indexnumberÍndice explícito; se usa con un virtualizer para mantener sincronizada la navegación por teclado.
onOpenChange(e: Event, data: { id: string; open: boolean }) => voidCallback que se ejecuta cuando este elemento se expande o se contrae.
onCheckedChange(e: Event, data: { id: string; checked: boolean }) => voidCallback que se ejecuta cuando este elemento se marca o se desmarca.

Propiedades del componente (TreeViewItemContent)

NameTypeDescription
refHTMLDivElementReferencia DOM enlazable del elemento de diseño.
expandIconSnippet | ComponentIcono personalizado renderizado para la acción de expandir o contraer.
iconBeforeSnippet | ComponentIcono renderizado antes del texto del elemento.
iconAfterSnippet | ComponentIcono renderizado después del texto del elemento.
asideSnippet | ComponentContenido renderizado en el lado final de la fila.
actionsSnippet | ComponentAcciones interactivas renderizadas al pasar el cursor o al recibir foco.
childrenSnippetEl contenido de la etiqueta del elemento.