ChipChip
El componente Chip se usa para introducir información, realizar selecciones, filtrar contenido o ejecutar acciones relacionadas.
Uso
Importa el componente cuando lo necesites:
import 'mdui/components/chip.js';
Importa el tipo TypeScript cuando lo necesites:
import type { Chip } from 'mdui/components/chip.js';
Uso:
<mdui-chip>Chip</mdui-chip>Ejemplos
Forma
El atributo variant define la forma del chip. Hay cuatro variantes; elige la que mejor encaje con tu caso de uso:
assist: Permite mostrar acciones auxiliares relacionadas con el contexto actual. Por ejemplo, en una página de pedidos, ofrecer acciones como compartir o marcar como favorito.filter: Permite filtrar contenido. Por ejemplo, en una página de resultados de búsqueda, filtrar los resultados.input: Permite representar fragmentos de información ingresados por el usuario. Por ejemplo, los contactos en el campo "Para" en Gmail.suggestion: Permite mostrar sugerencias generadas dinámicamente para simplificar la acción del usuario. Por ejemplo, en una aplicación de chat, sugerir mensajes que el usuario podría querer enviar.
Sombra
El atributo elevated hace que el chip tenga sombra.
Icono
Los atributos icon y end-icon permiten añadir iconos de Material Icons a la izquierda y derecha del chip respectivamente. También puedes añadir elementos a la izquierda y derecha del chip mediante los slots icon y end-icon.
Enlace
Con el atributo href, el chip actúa como enlace; también puedes usar download, target y rel.
Estados deshabilitado y de carga
El atributo disabled deshabilita el chip; añade el atributo loading para añadir un estado de carga al chip.
Seleccionable
El atributo selectable hace que el chip sea seleccionable.
El atributo selected-icon define el nombre del icono de Material Icons en estado seleccionado. También puedes proporcionar el elemento del icono en estado seleccionado mediante el slot selected-icon.
Cuando el chip está seleccionado, el atributo selected pasa a valer true. También puedes añadir el atributo selected para que el chip esté seleccionado por defecto.
Eliminable
Al añadir el atributo deletable, aparece un icono de eliminar en el lado derecho del chip. Al hacer clic en este icono se activa el evento delete. También puedes definir el nombre del icono de Material Icons para el botón de eliminar mediante el atributo delete-icon, o especificar el elemento del icono mediante el slot delete-icon.
API
Propiedades
| Atributo | Propiedad | Reflect | Tipo | Predeterminado |
|---|---|---|---|---|
variant | variant | 'assist' | 'filter' | 'input' | 'suggestion' | 'assist' | |
Variante del chip. Los valores posibles son:
| ||||
elevated | elevated | boolean | false | |
Indica si se muestra sombra. | ||||
selectable | selectable | boolean | false | |
Indica si se puede seleccionar. | ||||
selected | selected | boolean | false | |
Indica si está seleccionado. | ||||
deletable | deletable | boolean | false | |
Indica si se puede eliminar. Cuando es | ||||
icon | icon | string | - | |
Nombre del icono de Material Icons a la izquierda. También se puede establecer mediante | ||||
selected-icon | selectedIcon | string | - | |
Nombre del icono de Material Icons a la izquierda en el estado seleccionado. También se puede establecer mediante | ||||
end-icon | endIcon | string | - | |
Nombre del icono de Material Icons a la derecha. También se puede establecer mediante | ||||
delete-icon | deleteIcon | string | - | |
Nombre del icono de Material Icons para el icono de eliminar a la derecha cuando se puede eliminar. También se puede establecer mediante | ||||
href | href | string | - | |
URL de destino del enlace. Si se define esta propiedad, el componente se representará como un elemento | ||||
download | download | string | - | |
Nombre del archivo para el enlace de descarga. Nota: Esta propiedad solo tiene efecto si se ha definido la propiedad | ||||
target | target | '_blank' | '_parent' | '_self' | '_top' | - | |
Especifica dónde abrir el enlace. Los valores posibles son:
Nota: Esta propiedad solo tiene efecto si se ha definido la propiedad | ||||
rel | rel | 'alternate' | 'author' | 'bookmark' | 'external' | 'help' | 'license' | 'me' | 'next' | 'nofollow' | 'noreferrer' | 'opener' | 'prev' | 'search' | 'tag' | - | |
Relación entre el documento actual y el documento enlazado. Los valores posibles son:
Nota: Disponible solo cuando se especifica el atributo | ||||
autofocus | autofocus | boolean | false | |
Indica si el componente debe recibir el foco automáticamente cuando la página termine de cargar. | ||||
tabindex | tabIndex | number | - | |
Orden del elemento al navegar con la tecla Tab. | ||||
disabled | disabled | boolean | false | |
Indica si está deshabilitado. | ||||
loading | loading | boolean | false | |
Indica si está en estado de carga. | ||||
name | name | string | '' | |
Nombre del botón que se enviará con los datos del formulario. Nota: Esta propiedad solo tiene efecto si no se ha definido la propiedad | ||||
value | value | string | '' | |
Valor inicial del botón que se enviará con los datos del formulario. Nota: Esta propiedad solo tiene efecto si no se ha definido la propiedad | ||||
type | type | 'submit' | 'reset' | 'button' | 'button' | |
Tipo del botón. El tipo predeterminado es
Nota: Esta propiedad solo tiene efecto si no se ha especificado la propiedad | ||||
form | form | string | - | |
Elemento Si no se especifica esta propiedad, el elemento debe ser hijo de un elemento Nota: Esta propiedad solo tiene efecto si no se ha especificado la propiedad | ||||
formaction | formAction | string | - | |
Especifica la URL a la que se enviará el formulario. Si se especifica esta propiedad, anulará el atributo Nota: Esta propiedad solo tiene efecto si no se ha especificado la propiedad | ||||
formenctype | formEnctype | 'application/x-www-form-urlencoded' | 'multipart/form-data' | 'text/plain' | - | |
Especifica el tipo de contenido al enviar el formulario al servidor. Los valores posibles son:
Si se especifica esta propiedad, anulará el atributo Nota: Esta propiedad solo tiene efecto si no se ha especificado la propiedad | ||||
formmethod | formMethod | 'post' | 'get' | - | |
Especifica el método HTTP utilizado al enviar el formulario. Los valores posibles son:
Si se define esta propiedad, anulará el atributo Nota: Esta propiedad solo tiene efecto si no se ha definido la propiedad | ||||
formnovalidate | formNoValidate | boolean | false | |
Si se define esta propiedad, no se realizará la validación del formulario al enviarlo. Si se define esta propiedad, anulará el atributo Nota: Esta propiedad solo tiene efecto si no se ha definido la propiedad | ||||
formtarget | formTarget | '_self' | '_blank' | '_parent' | '_top' | - | |
Dónde mostrar la respuesta recibida después de enviar el formulario. Los valores posibles son:
Si se define esta propiedad, anulará el atributo Nota: Esta propiedad solo tiene efecto si no se ha definido la propiedad | ||||
validity | ValidityState | - | ||
Objeto de estado de validación del formulario, véase | ||||
validationMessage | string | - | ||
Si falla la validación del formulario, esta propiedad contendrá un mensaje informativo. Si la validación es correcta, esta propiedad será una cadena vacía. | ||||
Métodos
| Nombre | Parámetros | Valor de retorno |
|---|---|---|
click | void | |
Simula un clic del ratón en el elemento. | ||
focus |
| void |
Establece el foco en el elemento actual. Puede pasarse un objeto como parámetro con las siguientes propiedades:
| ||
blur | void | |
Quita el foco del elemento actual. | ||
checkValidity | boolean | |
Comprueba si el campo del formulario pasa la validación. Si falla, devuelve | ||
reportValidity | boolean | |
Comprueba si el campo del formulario pasa la validación. Si falla, devuelve Si la validación falla, también muestra un mensaje de error en el componente. | ||
setCustomValidity |
| void |
Establece un mensaje de error personalizado. Si este mensaje no está vacío, indica que el campo no ha pasado la validación. | ||
Slots
| Nombre |
|---|
| (predeterminado) |
Texto del chip. |
icon |
Elemento a la izquierda. |
end-icon |
Elemento a la derecha. |
selected-icon |
Elemento a la izquierda en el estado seleccionado. |
delete-icon |
Elemento de eliminar a la derecha cuando se puede eliminar. |
CSS Parts
| Nombre |
|---|
button |
Elemento interno |
label |
Texto del chip. |
icon |
Icono a la izquierda. |
end-icon |
Icono a la derecha. |
selected-icon |
Icono a la izquierda en el estado seleccionado. |
delete-icon |
Icono de eliminar a la derecha cuando se puede eliminar. |
loading |
Elemento |
CSS Custom Properties
| Nombre |
|---|
--shape-corner |
Tamaño de la esquina redondeada del componente. Se puede especificar un valor de píxel concreto; pero se recomienda hacer referencia a design tokens. |