Proporciona items y renderiza cada elemento con neuCarouselItem. numVisible define la cantidad visible y numScroll el avance por página. responsiveOptions cambia estas cantidades por debajo de cada breakpoint. Usa page para controlar la página desde 0, o no lo asignes y elige initialPage para la navegación interna. circular enlaza los extremos. autoplayInterval se mide en milisegundos; 0 lo desactiva. La reproducción puede pausarse y respeta la preferencia de movimiento reducido.
Los datos estructurados, callbacks y templates se muestran en los ejemplos y en la API.
El código añade las opciones avanzadas cuando difieren del valor predeterminado. Los datos y valores de esta configuración aparecen en el estado del template.
Template generado con tus opciones actuales. Abre Código para consultar el ejemplo completo.
Estos valores corresponden a la vista previa actual. Los handlers, imports de Core y templates completos están en Código.
configured-state.ts
import { signal } from '@angular/core';
export const collections = [
{
"id": "coast",
"title": "Luz de costa",
"description": "Un horizonte tranquilo en azul.",
"src": "assets/media/coast.svg"
},
{
"id": "forest",
"title": "Paseo por el bosque",
"description": "Capas de verde y luz suave.",
"src": "assets/media/forest.svg"
},
{
"id": "desert",
"title": "Formas del desierto",
"description": "Arena cálida y colinas lejanas.",
"src": "assets/media/desert.svg"
},
{
"id": "night",
"title": "Cielo nocturno",
"description": "Estrellas sobre una cordillera.",
"src": "assets/media/night.svg"
}
];
export const page = signal(0);
export const responsiveOptions = [
{
"breakpoint": 640,
"numVisible": 1,
"numScroll": 1
}
];
Estos inputs requieren un modelo o función, no un checkbox. Modifica el campo del mismo nombre en el componente de Código y enlázalo al template; los datos que ya usa esta vista previa se muestran en el estado anterior.
trackBy · (index: number, item: T) => unknown
En Código: define trackBy con este tipo y utiliza [trackBy]="trackBy" (o trackBy() si es una signal).
Acepta pageChange actualizando page. El evento incluye page y first, el índice del primer elemento visible. Core no modifica la colección. Usa identidades estables con trackBy. Los Templates de cabecera y pie permanecen fuera del área paginada.
Nombra la región y traduce previousLabel, nextLabel, indicatorLabel y emptyLabel. Las flechas, Inicio y Fin cambian de página cuando el foco no está en los controles proyectados. Izquierda/derecha siguen la dirección del texto; la orientación vertical usa arriba/abajo. Proporciona alternativas útiles para las imágenes y acceso por teclado al contenido interactivo.
Tecla
Acción
Tab
Recorre los controles de navegación y el contenido proyectado enfocable.
ArrowLeft / ArrowRight
En orientación horizontal, cambia de página según la dirección del texto, fuera de los controles proyectados.
ArrowUp / ArrowDown
En orientación vertical, cambia de página fuera de los controles proyectados.
Home
Va a la primera página.
End
Va a la última página.
Enter
Activa el botón enfocado de navegación o indicador de página.
Space
Activa el botón enfocado de navegación o indicador de página.
Inputs y Outputs corresponden al paquete instalado. Los tipos con nombre enlazan a sus definiciones. Cada Template disponible tiene un ejemplo con Demo y Código.
Inputs
Configura el componente con [propiedad]="valor". Tu aplicación proporciona estos valores; el componente no debe reemplazar el estado que le pasas.
Nombre
Tipo
Por defecto
Uso en el template
Descripción
ariaLabel
string
'Carousel'
[ariaLabel]
Etiqueta de región del componente. Tradúcela para tu aplicación.
autoplayInterval
number
0
[autoplayInterval]
Espera en milisegundos para reproducción automática; 0 la desactiva.
circular
boolean
false
[circular]
Enlaza la navegación entre la primera y la última página.
emptyLabel
string
'No items'
[emptyLabel]
Etiqueta de colección vacía. Tradúcela para tu aplicación.
indicatorLabel
string
'Carousel pages'
[indicatorLabel]
Etiqueta de indicadores de página. Tradúcela para tu aplicación.
initialPage
number
0
[initialPage]
Página inicial desde 0 para navegación no controlada.
items
readonly T[]
[]
[items]
Colección de solo lectura; renderiza objetos con neuCarouselItem.
nextLabel
string
'Next items'
[nextLabel]
Etiqueta de navegación siguiente. Tradúcela para tu aplicación.
numScroll
number
1
[numScroll]
Avance positivo entre páginas consecutivas.
numVisible
number
1
[numVisible]
Cantidad positiva de elementos visibles por página.
orientation
"horizontal" | "vertical"
'horizontal'
[orientation]
Organiza y navega el contenido horizontal o verticalmente.
page
number | null
null
[page]
Página aplicada desde 0; null utiliza el estado interno.
previousLabel
string
'Previous items'
[previousLabel]
Etiqueta de navegación anterior. Tradúcela para tu aplicación.
Página propuesta y el índice de su primer elemento visible.
Templates
ng-content proyecta contenido dentro del componente. Los inputs TemplateRef reciben un template; las directivas ng-template identifican templates con un contexto tipado. Una directiva compartida en el entrypoint no es necesariamente un slot de este componente.
Personaliza los tokens públicos disponibles y comprueba ambos temas. Las ilustraciones y el estado de los ejemplos no son Inputs de Core.
Tokens específicos
Este componente utiliza tokens compartidos del tema en lugar de tokens específicos.
Tokens compartidos utilizados
Sobrescríbelos en un contenedor local para afectar a este ejemplo. Una modificación en :root afecta a los demás componentes que utilizan el mismo token.
Token
Efecto aquí
Otros efectos
Valor / alternativa
--neu-border
Bordes normales de controles y celdas
Compartido con otros consumidores de Core; limita el cambio a un ámbito.
rgba(15, 23, 42, 0.08)
--neu-focus-ring
Anillo normal del foco de teclado
Compartido con otros consumidores de Core; limita el cambio a un ámbito.