ChipChip
O Chip ajuda os usuários a inserir informações, fazer seleções, filtrar conteúdo ou realizar ações.
Como usar
Importe o componente quando necessário:
import 'mdui/components/chip.js';
Importe o tipo TypeScript do componente quando necessário:
import type { Chip } from 'mdui/components/chip.js';
Exemplo de uso:
<mdui-chip>Chip</mdui-chip>Exemplos
Forma
Use o atributo variant para definir a forma do chip. Existem 4 tipos de chip, escolha de acordo com a finalidade:
assist: Exibe ações auxiliares relacionadas ao contexto atual. Exemplo: em uma página de pedidos, disponibilizar funções como compartilhar, favoritar etc.filter: Filtra conteúdo. Exemplo: em uma página de resultados de busca, filtrar os resultados.input: Representa fragmentos de informação inseridos pelo usuário. Exemplo: contatos no campo "Para" do Gmail.suggestion: Oferece informações de recomendação geradas dinamicamente para simplificar as ações do usuário. Exemplo, em um aplicativo de chat, sugerir mensagens que o usuário possa querer enviar.
Sombra
Use o atributo elevated para dar sombra ao chip.
Ícone
Adicione os atributos icon e end-icon para adicionar ícones do Material Icons à esquerda e à direita do chip, respectivamente. Você também pode adicionar elementos pelos slots icon e end-icon.
Link
Use o atributo href para transformar o chip em um link. Assim, você também pode usar os atributos relacionados a links: download, target, rel.
Estado desabilitado e carregando
Use o atributo disabled para desabilitar o chip; adicione o atributo loading para adicionar um estado de carregamento ao chip.
Selecionável
Use o atributo selectable para tornar o chip selecionável.
Use o atributo selected-icon para definir o nome do ícone do Material Icons no estado selecionado. Você também pode adicionar o elemento de ícone do estado selecionado pelo slot selected-icon.
Quando o chip é selecionado, o atributo selected torna-se true. Você também pode adicionar o atributo selected para que o chip inicie no estado selecionado.
Deletável
Use o atributo deletable para que um ícone de deletar apareça no lado direito do chip. Clicar neste ícone dispara o evento delete. Use o atributo delete-icon para definir o nome do ícone do Material Icons para deletar, ou o slot delete-icon para definir o elemento do ícone.
API
Propriedades
| Atributo | Propriedade | Reflect | Tipo | Padrão |
|---|---|---|---|---|
variant | variant | 'assist' | 'filter' | 'input' | 'suggestion' | 'assist' | |
Forma do chip. Os valores possíveis são:
| ||||
elevated | elevated | boolean | false | |
Define se o componente deve exibir sombra. | ||||
selectable | selectable | boolean | false | |
Define se o componente é selecionável. | ||||
selected | selected | boolean | false | |
Define se o componente está selecionado. | ||||
deletable | deletable | boolean | false | |
Define se o componente é removível. Quando | ||||
icon | icon | string | - | |
Nome do ícone Material Icons à esquerda. Também pode ser definido via | ||||
selected-icon | selectedIcon | string | - | |
Nome do ícone Material Icons à esquerda no estado selecionado. Também pode ser definido via | ||||
end-icon | endIcon | string | - | |
Nome do ícone Material Icons à direita. Também pode ser definido via | ||||
delete-icon | deleteIcon | string | - | |
Nome do ícone Material Icons para o ícone de remoção à direita quando removível. Também pode ser definido via | ||||
href | href | string | - | |
A URL de destino do link. Ao definir esta propriedade, o componente será renderizado internamente como um elemento | ||||
download | download | string | - | |
O nome do arquivo para download. Nota: Esta propriedade só é válida quando o atributo | ||||
target | target | '_blank' | '_parent' | '_self' | '_top' | - | |
Define como o link será aberto. Os valores possíveis são:
Nota: Esta propriedade só é válida quando o atributo | ||||
rel | rel | 'alternate' | 'author' | 'bookmark' | 'external' | 'help' | 'license' | 'me' | 'next' | 'nofollow' | 'noreferrer' | 'opener' | 'prev' | 'search' | 'tag' | - | |
A relação entre o documento atual e o documento vinculado. Os valores possíveis são:
Nota: Disponível apenas quando o atributo | ||||
autofocus | autofocus | boolean | false | |
Define se o elemento deve receber foco automaticamente após o carregamento da página. | ||||
tabindex | tabIndex | number | - | |
A ordem do elemento ao navegar com a tecla Tab. | ||||
disabled | disabled | boolean | false | |
Define se o componente está desabilitado. | ||||
loading | loading | boolean | false | |
Define se o componente está em estado de carregamento. | ||||
name | name | string | '' | |
O nome do botão, que será enviado com os dados do formulário. Nota: Esta propriedade só é válida quando o atributo | ||||
value | value | string | '' | |
O valor inicial do botão, que será enviado com os dados do formulário. Nota: Esta propriedade só é válida quando o atributo | ||||
type | type | 'submit' | 'reset' | 'button' | 'button' | |
O tipo do botão. O tipo padrão é
Nota: Esta propriedade só é válida quando o atributo | ||||
form | form | string | - | |
O elemento Se este atributo não for especificado, o elemento precisa ser um elemento filho de um Nota: Esta propriedade só é válida quando o atributo | ||||
formaction | formAction | string | - | |
Especifica a URL para envio do formulário. Se este atributo for especificado, ele substituirá o atributo Nota: Esta propriedade só é válida quando o atributo | ||||
formenctype | formEnctype | 'application/x-www-form-urlencoded' | 'multipart/form-data' | 'text/plain' | - | |
Especifica o tipo de conteúdo ao enviar o formulário para o servidor. Os valores possíveis são:
Se este atributo for especificado, ele substituirá o atributo Nota: Esta propriedade só é válida quando o atributo | ||||
formmethod | formMethod | 'post' | 'get' | - | |
Especifica o método HTTP a ser usado ao enviar o formulário. Os valores possíveis são:
Se este atributo for definido, ele substituirá o atributo Nota: Esta propriedade só é válida quando o atributo | ||||
formnovalidate | formNoValidate | boolean | false | |
Se este atributo for definido, a validação do formulário não será executada ao enviar. Se este atributo for definido, ele substituirá o atributo Nota: Esta propriedade só é válida quando o atributo | ||||
formtarget | formTarget | '_self' | '_blank' | '_parent' | '_top' | - | |
Onde exibir a resposta recebida após o envio do formulário. Os valores possíveis são:
Se este atributo for definido, ele substituirá o atributo Nota: Esta propriedade só é válida quando o atributo | ||||
validity | ValidityState | - | ||
Objeto que representa o estado de validação do formulário. Consulte | ||||
validationMessage | string | - | ||
Se a validação do formulário falhar, esta propriedade conterá uma mensagem de erro. Se a validação for bem-sucedida, esta propriedade será uma string vazia. | ||||
Métodos
| Nome | Parâmetros | Retorno |
|---|---|---|
click | void | |
Simula um clique do mouse no elemento. | ||
focus |
| void |
Define o foco no elemento atual. Você pode passar um objeto como argumento, com as seguintes propriedades:
| ||
blur | void | |
Remove o foco do elemento atual. | ||
checkValidity | boolean | |
Verifica se o campo do formulário passou na validação. Se não passou, retorna | ||
reportValidity | boolean | |
Verifica se o campo do formulário passou na validação. Se não passou, retorna Se a validação falhar, também exibe uma mensagem de erro no componente. | ||
setCustomValidity |
| void |
Define um texto de erro personalizado. Enquanto este texto não estiver vazio, indica que o campo não passou na validação. | ||
Slots
| Nome |
|---|
| (padrão) |
Texto do chip. |
icon |
Elemento à esquerda. |
end-icon |
Elemento à direita. |
selected-icon |
Elemento à esquerda no estado selecionado. |
delete-icon |
Elemento de remoção à direita quando removível. |
CSS Parts
| Nome |
|---|
button |
Elemento |
label |
Texto do chip. |
icon |
Ícone à esquerda. |
end-icon |
Ícone à direita. |
selected-icon |
Ícone à esquerda no estado selecionado. |
delete-icon |
Ícone de remoção à direita quando removível. |
loading |
Elemento |
Propriedades CSS personalizadas
| Nome |
|---|
--shape-corner |
Tamanho da borda arredondada do componente. Pode ser um valor em pixels, mas é recomendado usar os design tokens. |