enes

Calendar View

El Calendar View es un calendario en línea para explorar días, meses y años. Permite seleccionar una sola fecha o varias, definir límites mínimo y máximo, bloquear fechas y configurar el primer día de la semana y el idioma.

Uso

<script>
	import { CalendarView } from 'fluentui-svelte';

	let value = $state(null);
</script>

<CalendarView bind:value onChange={(e, selection) => console.log(selection)} />

Selección múltiple

Activa la propiedad multiple para permitir seleccionar más de una fecha.

Selección de rango

Asigna range a selectionMode para elegir un inicio y un fin. El rango tiene su propio binding en lugar de compartir value, y end permanece en null entre los dos clics, de modo que un rango a medio construir se distingue de un rango de un solo día.

Inicio de la semana

Usa la propiedad weekStart para cambiar el primer día de la semana (0 = domingo, 3 = miércoles).

Propiedades de CalendarView

NameTypeDefaultDescription
ref bindableHTMLDivElementLa referencia del DOM del elemento calendario.
value bindableDate | Date[] | nullnullLa fecha seleccionada, o un array de fechas cuando `selectionMode` es `'multiple'`. No se usa en `'range'`.
selectionMode'single' | 'multiple' | 'range''single'Cuántas fechas entrega la cuadrícula, y de qué forma.
range bindable{ start: Date | null; end: Date | null; }{ start: null, end: null }El rango elegido. Solo se lee y se escribe cuando `selectionMode` es `'range'`, y `end` permanece `null` hasta que el rango se cierra.
blackoutBreaksRangebooleanfalseImpide que un rango abarque una fecha bloqueada.
blackoutDatesDate[]Fechas que se renderizan pero no se pueden seleccionar.
headersbooleanEtiqueta con su nombre la primera celda de un mes o de un año.
minDateDateLa primera fecha seleccionable.
maxDateDateLa última fecha seleccionable.
view'days' | 'months' | 'years''days'La página del calendario con la que se abre la vista.
localestring'en-US'El locale con el que se formatean los nombres de los días y de los meses.
weekStartnumber1El primer día de la semana, donde 0 es domingo.
floatingCalendarViewFloatingRenderiza el calendario como un popup anclado a un elemento de referencia en lugar de en línea.
onChange(event: Event, value: Date | Date[] | null) => voidSe llama cada vez que cambia la selección. No se llama en modo `'range'`.
onRangeChange(event: Event, range: CalendarDateRange) => voidSe dispara en cada paso de un rango, incluido el que deja `end` en null.
onViewChange(event: Event, view: View) => voidSe llama cada vez que cambia la página activa del calendario.
Element Attributes (div)

Propiedades de CalendarViewItem

NameTypeDefaultDescription
selectedbooleanRenderiza la celda como la seleccionada.
disabledbooleanDeshabilita la interacción del usuario.
currentbooleanMarca la celda como la fecha actual.
outOfRangebooleanRenderiza la celda como perteneciente a una página vecina.
blackoutbooleanRenderiza la celda como bloqueada, de modo que se lea como no disponible en lugar de deshabilitada.
rangePosition'start' | 'between' | 'end'Se aplica a los días que abarca un rango, lo que pinta la banda detrás de ellos.
headerstringUna etiqueta pequeña que se renderiza sobre el contenido de la celda.
variant'day' | 'monthYear''day'Qué forma toma la celda: un círculo para un día, un rectángulo redondeado para un mes o un año.
childrenSnippetEl contenido de la celda.
buttonAttributesHTMLButtonAttributesLos atributos que se aplican al elemento button interno.
Element Attributes (div)