SwitchSwitch
O componente switch é usado para alternar o estado ligado/desligado de uma única opção, com um design de interação intuitivo que permite aos usuários ajustar as configurações facilmente.
Como usar
Importe o componente conforme necessário:
import 'mdui/components/switch.js';
Importe o tipo TypeScript do componente conforme necessário:
import type { Switch } from 'mdui/components/switch.js';
Exemplo de uso:
<mdui-switch></mdui-switch>Exemplos
Estado selecionado
Quando o switch está selecionado, o valor do atributo checked é true. Você também pode adicionar o atributo checked para que o switch inicie selecionado por padrão.
Estado desabilitado
Use o atributo disabled para desabilitar o componente switch.
Ícone
Você pode usar o atributo unchecked-icon para definir o ícone do Material Icons no estado não selecionado e o atributo checked-icon para definir o ícone no estado selecionado. Você também pode usar os slots unchecked-icon e checked-icon para personalizar os elementos de ícone dos estados não selecionado e selecionado.
API
Propriedades
| Atributo | Propriedade | Reflect | Tipo | Padrão |
|---|---|---|---|---|
disabled | disabled | boolean | false | |
Define se o componente está desabilitado. | ||||
checked | checked | boolean | false | |
Define se o componente está selecionado. | ||||
defaultChecked | boolean | false | ||
Estado de seleção padrão. Ao redefinir o formulário, será restaurado para este estado. Esta propriedade só pode ser definida via propriedade JavaScript. | ||||
unchecked-icon | uncheckedIcon | string | - | |
Nome do ícone Material Icons para o estado não selecionado. Também pode ser definido via | ||||
checked-icon | checkedIcon | string | - | |
Nome do ícone Material Icons para o estado selecionado. Também pode ser definido via O padrão é o ícone | ||||
required | required | boolean | false | |
Define se, ao enviar o formulário, é obrigatório que este switch esteja selecionado. | ||||
form | form | string | - | |
O elemento Se este atributo não for especificado, o elemento precisa ser um elemento filho de um | ||||
name | name | string | '' | |
O nome do switch, que será enviado com os dados do formulário. | ||||
value | value | string | 'on' | |
O valor do switch, que será enviado com os dados do formulário. | ||||
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. | ||||
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. | ||||
Métodos
| Nome | Parâmetros | Retorno |
|---|---|---|
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. | ||
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. | ||
Slots
| Nome |
|---|
unchecked-icon |
Elemento no estado não selecionado. |
checked-icon |
Elemento no estado selecionado. |
CSS Parts
| Nome |
|---|
track |
Trilha. |
thumb |
Contêiner do ícone. |
unchecked-icon |
Ícone no estado não selecionado. |
checked-icon |
Ícone no estado selecionado. |
Propriedades CSS personalizadas
| Nome |
|---|
--shape-corner |
Tamanho da borda arredondada da trilha do componente. Pode ser um valor em pixels, mas é recomendado usar os design tokens. |
--shape-corner-thumb |
Tamanho da borda arredondada do contêiner do ícone do componente. Pode ser um valor em pixels, mas é recomendado usar os design tokens. |