Pular para o conteúdo

Breadcrumb

Trilha de navegação breadcrumb mostrando localização hierárquica.

import { Breadcrumb } from 'asterui'

Breadcrumb Básico

Navegação breadcrumb simples.

import { Breadcrumb } from 'asterui'

function App() {
  return (
      <Breadcrumb>
        <Breadcrumb.Item href="/">Home</Breadcrumb.Item>
        <Breadcrumb.Item href="/documents">Documents</Breadcrumb.Item>
        <Breadcrumb.Item>Add Document</Breadcrumb.Item>
      </Breadcrumb>
    )
}

export default App

Com Ícones

Breadcrumb com ícones.

import { Breadcrumb } from 'asterui'
import { FolderIcon, DocumentTextIcon } from '@aster-ui/icons'

function App() {
  return (
      <Breadcrumb>
        <Breadcrumb.Item href="/" icon={<FolderIcon size="sm" />}>
          Home
        </Breadcrumb.Item>
        <Breadcrumb.Item href="/documents" icon={<FolderIcon size="sm" />}>
          Documents
        </Breadcrumb.Item>
        <Breadcrumb.Item icon={<DocumentTextIcon size="sm" />}>
          Add Document
        </Breadcrumb.Item>
      </Breadcrumb>
    )
}

export default App

Separador Personalizado

Use uma string ou nó React como separador.

import { Breadcrumb } from 'asterui'
import { ChevronRightIcon } from '@aster-ui/icons'

function App() {
  return (
      <div className="space-y-4">
        <Breadcrumb separator="/">
          <Breadcrumb.Item href="/">Home</Breadcrumb.Item>
          <Breadcrumb.Item href="/products">Products</Breadcrumb.Item>
          <Breadcrumb.Item>Details</Breadcrumb.Item>
        </Breadcrumb>
        <Breadcrumb separator={<ChevronRightIcon size="sm" />}>
          <Breadcrumb.Item href="/">Home</Breadcrumb.Item>
          <Breadcrumb.Item href="/products">Products</Breadcrumb.Item>
          <Breadcrumb.Item>Details</Breadcrumb.Item>
        </Breadcrumb>
      </div>
    )
}

export default App

Orientado a Dados

Use a prop items para breadcrumbs orientados a dados.

import { Breadcrumb } from 'asterui'

function App() {
  return (
      <Breadcrumb
        items={[
          { title: 'Home', href: '/' },
          { title: 'Products', href: '/products' },
          { title: 'Category', href: '/products/category' },
          { title: 'Item Details' },
        ]}
      />
    )
}

export default App

Largura Máxima com Rolagem

Breadcrumb com rolagem de overflow.

import { Breadcrumb } from 'asterui'

function App() {
  return (
      <Breadcrumb className="max-w-xs">
        <Breadcrumb.Item href="/">Home</Breadcrumb.Item>
        <Breadcrumb.Item href="/documents">Documents</Breadcrumb.Item>
        <Breadcrumb.Item href="/projects">Projects</Breadcrumb.Item>
        <Breadcrumb.Item href="/team">Team</Breadcrumb.Item>
        <Breadcrumb.Item>Add New Member</Breadcrumb.Item>
      </Breadcrumb>
    )
}

export default App
PropriedadeDescriçãoTipoPadrão
childrenComponentes Breadcrumb.Item (padrão composto)React.ReactNode-
itemsDados de itens breadcrumb (padrão orientado a dados)BreadcrumbItemType[]-
separatorSeparador personalizado entre itensReact.ReactNode"/"
classNameClasses CSS adicionaisstring-
data-testidID de teste para testesstring-
PropriedadeDescriçãoTipoPadrão
titleTítulo/rótulo do itemReact.ReactNode-
hrefURL do linkstring-
onClickHandler de clique() => void-
classNameClasse CSS personalizadastring-
data-testidID de teste para testesstring-
PropriedadeDescriçãoTipoPadrão
childrenConteúdo do item (texto ou elementos)React.ReactNode-
hrefURL do link (torna o item clicável)string-
onClickHandler de clique (torna o item clicável)() => void-
iconÍcone para exibir antes do rótuloReact.ReactNode-
classNameClasses CSS adicionaisstring-
data-testidID de teste para testesstring-
  • Omita href/onClick no último item para mostrar a localização atual
  • Use classes de largura máxima para habilitar rolagem horizontal
  • Adicione ícones usando a prop icon em Breadcrumb.Item