Skip to content
Versão preliminar. Cores, componentes e layout ainda vão mudar: falta receber o padrão de interface do TJES (template-basico-vue) e o manual de identidade visual.

BaseField e BaseInput ​

BaseField dá rótulo, ajuda e erro a um campo. BaseInput é o campo de texto. Dentro de um BaseField, o campo se liga sozinho ao rótulo e às mensagens.

Formato 000/2026

Uso ​

  • Todo campo tem rótulo visível. hide-label só para filtros compactos, quando o contexto já diz o que é.
  • A ajuda explica o formato antes do erro acontecer.
  • O erro diz o que está errado e como corrigir: "Informe o número no formato 000/2026", não "Campo inválido".
  • Marque os obrigatórios com required. Em formulários onde quase tudo é obrigatório, marque os outros com optional.
  • Use warn para um valor aceito, mas que merece atenção.

Estados ​

Informe o número no formato 000/2026

Valor 40% acima da média das obras

Estilo ​

PropriedadeToken
Fundo--tj-field-01; desabilitado e somente leitura --tj-field-disabled
Borda--tj-border-strong-01, hover --tj-border-strong-02, foco --tj-border-interactive
Erro--tj-support-error-text
Aviso--tj-support-warning-text (borda e texto); no foco, contorno sólido de 2 px na mesma cor
Rótulo--tj-text-secondary, 13 px, semibold
Altura--tj-control-sm/md/lg

Código ​

vue
<BaseField label="Número do contrato" helper-text="Formato 000/2026" :invalid="erro" invalid-text="Informe o número no formato 000/2026" required>
  <BaseInput v-model="numero" />
</BaseField>

BaseField

PropriedadeTipoDescrição
labelstringRótulo (obrigatório)
helperTextstringAjuda abaixo do campo
invalid / invalidTextboolean / stringErro, no lugar da ajuda
warn / warnTextboolean / stringAviso, no lugar da ajuda
required / optionalbooleanMarca no rótulo
hideLabelbooleanRótulo só para leitor de tela

BaseInput

PropriedadeTipoPadrãoDescrição
v-modelstring''Valor
type'text' | 'email' | 'search' | 'tel' | 'url' | 'password''text'Tipo do campo
size'sm' | 'md' | 'lg''md'Altura
placeholder, disabled, readonly, required, invalidEstados
autocomplete, inputmodestring—Ajuda o navegador e o teclado do celular
iconStart, prefix, suffixstring—Ícone ou texto fixo dentro do campo

Acessibilidade ​

  • O rótulo é um <label for> ligado ao campo; clicar no rótulo foca o campo.
  • Ajuda, erro e aviso ficam em aria-describedby; o leitor de tela lê a mensagem junto com o campo.
  • Com erro, o campo recebe aria-invalid="true". A cor nunca é o único sinal: há ícone e texto.
  • O asterisco de obrigatório fica escondido do leitor de tela, que já anuncia o required.
  • Prefixo e sufixo são decorativos (aria-hidden). Coloque a unidade também no rótulo quando ela importa, por exemplo "Valor global (R$)".
  • Testado com axe em todos os estados.