Un Chip seleccionable es un botón de alternancia: el clic, Intro o Espacio emiten selectedChange. Enlaza selected y acepta el valor propuesto desde la aplicación. Con removable, Chip pasa a ser un grupo con un botón para eliminar; no emite selectedChange. removed solicita la eliminación, pero la aplicación debe retirar el elemento. Proyecta la etiqueta visible o un icono junto a la etiqueta.
selected es un Input, no un modelo. selectedChange propone un valor: utiliza [selected] y (selectedChange) para actualizar el estado de la aplicación. removed es un evento; el componente no se elimina por sí mismo. No tiene enlaces de Signal Forms.
Los chips seleccionables exponen aria-pressed. Tab enfoca los chips habilitados; Intro y Espacio proponen alternar sin desplazar la página. Los chips eliminables enfocan su botón nativo, nombrado por removeAriaLabel. disabled bloquea ambas interacciones. Mantén texto visible significativo; no dependas solo del color seleccionado.
Tecla
Acción
Tab
Accede a los chips seleccionables habilitados y a los botones disponibles de eliminar.
Enter
Propone cambiar el chip seleccionable enfocado o lo elimina desde su botón enfocado de eliminar.
Space
Propone cambiar el chip seleccionable enfocado o lo elimina desde su botón enfocado de eliminar.
Los Inputs y Outputs se extraen del paquete fijado. Los tipos con nombre enlazan a sus definiciones; Templates enumera solo las zonas de proyección disponibles.
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
disabled
boolean
false
[disabled]
Bloquea la selección y la eliminación.
removable
boolean
false
[removable]
Sustituye la alternancia por un grupo con botón nativo para eliminar.
removeAriaLabel
string
'Remove'
[removeAriaLabel]
Nombre accesible del botón para eliminar.
selected
boolean
false
[selected]
Estado seleccionado controlado; actualízalo al aceptar selectedChange.
Escucha un evento con (evento)="handler($event)". La tabla indica qué datos recibe tu función y cómo utilizarlos.
Nombre
Valor emitido
Uso en el template
Descripción
removed
void
(removed)="onRemoved($event)"
Solicitud de eliminación; la aplicación retira el elemento.
selectedChange
boolean
(selectedChange)="onSelectedChange($event)"
Propone el siguiente booleano selected; no lo modifica automáticamente.
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.
Utiliza los Inputs públicos y los tokens de superficie, texto, espaciado y color semántico de Core. Mantén el contenido adaptable y comprueba ambos temas.
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-border-hover
Bordes de controles al pasar el puntero
Compartido con otros consumidores de Core; limita el cambio a un ámbito.
rgba(15, 23, 42, 0.16)
--neu-error-bg
Fondo de estados de error o peligro
Compartido con otros consumidores de Core; limita el cambio a un ámbito.
#fee2e2
--neu-error-text
Texto de error y de Button danger outline/ghost en ambos temas
Compartido con otros consumidores de Core; limita el cambio a un ámbito.
#991b1b
--neu-primary
Color de marca en controles activos y énfasis
Compartido con otros consumidores de Core; limita el cambio a un ámbito.
#007aff
--neu-primary-50
Superficie tenue de marca para estados de puntero y foco
Compartido con otros consumidores de Core; limita el cambio a un ámbito.
#eff6ff
--neu-primary-dark
Tono oscuro de marca; texto de Button outline y ghost en el tema claro
Compartido con otros consumidores de Core; limita el cambio a un ámbito.
#005fcc
--neu-primary-fg
Contenido dibujado sobre el fondo primario
Compartido con otros consumidores de Core; limita el cambio a un ámbito.