Ir para o conteúdo principal
WBC - GovBR-DS
Copiar página como Markdown para IA

Item

Componente estável e recomendada para novos projetos.
Anatomia, uso, comportamento visual e recomendações conceituais são mantidos pelo Padrão Digital de Governo. Esta página documenta a implementação Web Components e sua API executável.

Visão Geral

Para a documentação completa, incluindo diretrizes de uso, acessibilidade e exemplos visuais, consulte o Design System do GovBR.

Exemplo(s)

Propriedades

active

Atributoactive
DescriçãoEstado ativo canônico. Quando informado, tem precedência sobre isActive.
Tipoboolean
Valor padrão---

button

Atributobutton
DescriçãoRenderiza o item como botão. Quando informado, tem precedência sobre isButton.
Tipoboolean
Valor padrão---

customId

Atributocustom-id
DescriçãoIdentificador único do componente.
Quando omitido, um valor é gerado automaticamente.

> Padrão: valor único gerado por generateUniqueId().
Tipostring
Valor padrãogenerateUniqueId()

density

Atributodensity
DescriçãoDefine a densidade visual do componente.

- small: Alta densidade (componente menor, mais compacto e com menos espaçamento).
- medium: Densidade intermediária, padrão recomendado para a maioria dos casos.
- large: Baixa densidade (componente maior, mais espaçamento e altura).
Tipo"large" | "medium" | "small"
Valor padrão'medium'

disabled

Atributodisabled
DescriçãoDesabilita a interação com o componente.
Tipoboolean
Valor padrãofalse

href

Atributohref
DescriçãoURL ou caminho para o qual o usuário será direcionado ao clicar no item. Quando definido, o item será renderizado como um link.
Tipostring
Valor padrão---

interactive

Atributointeractive
DescriçãoTorna toda a superfície interativa. Quando informado, tem precedência sobre isInteractive.
Tipoboolean
Valor padrão---

isActive Componente mantido por compatibilidade; prefira a alternativa indicada na documentação.

Atributois-active
DepreciaçãoUse active.
DescriçãoIndica se o item está no estado ativo.
Se definido como verdadeiro, o item será exibido como ativo.
Tipoboolean
Valor padrãofalse

isButton Componente mantido por compatibilidade; prefira a alternativa indicada na documentação.

Atributois-button
DepreciaçãoUse button.
DescriçãoQuando definido como true, o item será tratado como um botão.
Tipoboolean
Valor padrãofalse

isInteractive Componente mantido por compatibilidade; prefira a alternativa indicada na documentação.

Atributois-interactive
DepreciaçãoUse interactive.
DescriçãoMarca o item como interativo, permitindo que toda a superfície do item seja clicável.
Tipoboolean
Valor padrãofalse

isSelected Componente mantido por compatibilidade; prefira a alternativa indicada na documentação.

Atributois-selected
DepreciaçãoUse selected.
DescriçãoIndica se o item está no estado selecionado.
Se definido como verdadeiro, o item será exibido como selecionado.
Tipoboolean
Valor padrãofalse
Atributonavigation-mode
DescriçãoControla como o componente integra a navegação mantendo href real no elemento navegável.
- native (padrão): preserva o comportamento do navegador, conforme HTML/W3C.
- event: emite brNavigate; se o evento for cancelado, bloqueia a navegação nativa para a SPA assumir.
Cliques com modificadores, botão do meio ou target diferente de _self permanecem nativos.
Tipo"event" | "native"
Valor padrão'native'

selected

Atributoselected
DescriçãoEstado selecionado canônico. Quando informado, tem precedência sobre isSelected.
Tipoboolean
Valor padrão---

target

Atributotarget
DescriçãoDefine o alvo do link quando href está presente. Pode ser:
- _blank para abrir em uma nova aba,
- _self para abrir na mesma aba,
- _parent para abrir na aba pai,
- _top para abrir na aba superior.
Tipo"_blank" | "_parent" | "_self" | "_top"
Valor padrão---

type

Atributotype
DescriçãoTipo do botão, aplicável apenas se isButton for true. Pode ser:
- 'submit' para enviar um formulário,
- 'reset' para redefinir um formulário,
- 'button' para um botão padrão.
Tipo"button" | "reset" | "submit"
Valor padrão---

value

Atributovalue
DescriçãoDefine um valor associado ao br-item quando renderizado como um botão, utilizado em contextos de formulário.
Tipostring
Valor padrão---

Slots

NomeDescrição
"default"Área de conteúdo, podendo conter qualquer componente, exceto botões primários e componentes relacionados à navegação (como carrosséis, paginações, abas, menus, etc.).
"end"Área de recursos complementares, podendo conter componentes interativos, metadados e informações adicionais.
"start"Área de recursos visuais, podendo conter elementos como ícones, avatares e mídias.

Eventos

EventoDescriçãoDepreciaçãoPropagação
brDidClick Componente mantido por compatibilidade; prefira a alternativa indicada na documentação.Use brItemClick.true
brDidSelect Componente mantido por compatibilidade; prefira a alternativa indicada na documentação.Use brItemSelect.true
brItemClickEvento canônico emitido quando o item com comportamento de botão é acionado.---true
brItemSelectEvento canônico emitido quando a seleção muda.---true
brNavigateEvento cancelável emitido em navigation-mode="event" para cliques primários sem modificadores em links _self. Chame event.preventDefault() no listener para impedir a navegação nativa e entregar event.detail.href ao roteador da SPA.---true

Métodos

activate

DescriçãoAtiva o item programaticamente, simulando um clique na superfície.
Utilizado pelo br-list para tratar Enter e Espaço via teclado, e
internamente pelo próprio item quando standalone (fora de br-list).
Assinaturaactivate() => Promise<void>
Parâmetros---

setFocus

DescriçãoDefine o foco no elemento interno do componente.
Este método pode ser chamado externamente para garantir que o foco seja aplicado ao elemento correto.
AssinaturasetFocus() => Promise<void>
Parâmetros---

setTabIndex

DescriçãoDefine o tabIndex do elemento interno.
Utilizado pelo br-list para implementar o padrão roving tabindex,
garantindo que apenas um item por vez seja alcançável via Tab.
AssinaturasetTabIndex(value: number) => Promise<void>
Parâmetrosvalue:

CSS Shadow Parts

NomeDescrição
"item"Elemento principal do item (botão, link ou div).

Dependências

Usado por

Gráfico

Migração de <br-item> (1.x → 2.x)

O item mantém os estados de seleção e os links, mas a API atual separa melhor interação, navegação e composição.

Propriedades e eventos

API 1.xAPI 2.xAção na migração
navigationModeConfigure quando o item participa da navegação da aplicação.
active, selected, disabled, hrefmesmos nomesMantenha as propriedades canônicas.
hover, open, titleRemova; modele o comportamento com composição e estados atuais.
isActive, isSelected, isInteractive, isButtonactive, selected, interactive, buttonNão use aliases legados no código novo.
eventos de toggle da 1.xbrItemClick / brItemSelectAtualize os listeners para os eventos atuais.

Exemplo

1.x:

<br-item title="Documentação" href="/docs" active></br-item>

2.x:

<br-item href="/docs" active>Documentação</br-item>

Migração de Navegação

Antes, br-item aceitava is-spa-link-behavior quando era renderizado como link.

Agora, use navigation-mode="event" junto com href.

<!-- Antes -->
<br-item href="/servicos" is-spa-link-behavior>Servicos</br-item>

<!-- Agora -->
<br-item href="/servicos" navigation-mode="event">Servicos</br-item>

O evento emitido é brNavigate. Cancele o evento para entregar a navegação ao roteador da SPA. Sem cancelamento, a navegação nativa continua.