Saltar al contenido
Logic2BUI

Buscar en la documentación

Busca componentes y documentación

Nuevo
Menú

Menú de navegación

Colección de enlaces y paneles desplegables para navegar por un sitio o aplicación.

Instalación

npx logic2b@next add navigation-menu

Uso

import {
  NavigationMenu,
  NavigationMenuContent,
  NavigationMenuItem,
  NavigationMenuLink,
  NavigationMenuList,
  NavigationMenuTrigger,
} from "@/components/ui/navigation-menu"

<NavigationMenu>
  <NavigationMenuList>
    <NavigationMenuItem>
      <NavigationMenuTrigger>Componentes</NavigationMenuTrigger>
      <NavigationMenuContent>
        <NavigationMenuLink href="/docs">Documentación</NavigationMenuLink>
      </NavigationMenuContent>
    </NavigationMenuItem>
  </NavigationMenuList>
</NavigationMenu>

Ejemplos

Barra de enlaces

Desplegable en línea

Accesibilidad

Está construido sobre el Navigation Menu de Radix.

  • Los disparadores reciben el foco; Intro/Espacio y las flechas abren el menú y desplazan la selección.
  • Escape cierra el panel abierto y devuelve el foco al disparador.
  • El enlace activo usa data-active, que se asocia a aria-current, para que los lectores de pantalla anuncien la página actual.
  • Cada panel de contenido queda etiquetado por su disparador.

Playground interactivo

Edita las propiedades del componente y revisa el JSX exacto antes de copiarlo. La vista previa se carga solo cuando esta sección entra en pantalla.

JSX generado
<NavigationMenu
  aria-label="Product navigation"
>
  <NavigationMenuList>
    <NavigationMenuItem>
      <NavigationMenuTrigger>Platform</NavigationMenuTrigger>
      <NavigationMenuContent
        className="w-64"
      >
        <NavigationMenuLink
          href="#registry"
        >Registry</NavigationMenuLink>
        <NavigationMenuLink
          href="#tokens"
        >Design tokens</NavigationMenuLink>
      </NavigationMenuContent>
    </NavigationMenuItem>
    <NavigationMenuItem>
      <NavigationMenuLink
        href="#docs"
      >Documentation</NavigationMenuLink>
    </NavigationMenuItem>
  </NavigationMenuList>
</NavigationMenu>

Referencia de API

Generada a partir de las exportaciones públicas de TypeScript en src/ui/navigation-menu.tsx. Las descripciones técnicas conservan el texto canónico del código fuente.

Ver JSON

NavigationMenu

Componente
Props: React.ComponentProps<typeof NavigationMenuPrimitive.Root> & { viewport?: boolean }
PropiedadTipoObligatoriaValor predeterminadoDescripción
viewportbooleanNotrue—

NavigationMenuList

Componente
Props: React.ComponentProps<typeof NavigationMenuPrimitive.List>

NavigationMenuItem

Componente
Props: React.ComponentProps<typeof NavigationMenuPrimitive.Item>

NavigationMenuContent

Componente
Props: React.ComponentProps<typeof NavigationMenuPrimitive.Content>

NavigationMenuTrigger

Componente
Props: React.ComponentProps<typeof NavigationMenuPrimitive.Trigger>
Componente
Props: React.ComponentProps<typeof NavigationMenuPrimitive.Link>

NavigationMenuIndicator

Componente
Props: React.ComponentProps<typeof NavigationMenuPrimitive.Indicator>

NavigationMenuViewport

Componente
Props: React.ComponentProps<typeof NavigationMenuPrimitive.Viewport>

navigationMenuTriggerStyle

Utilidad
(props?: ClassProp | undefined): string

Contrato de accesibilidad

Comportamiento legible por máquinas y responsabilidades de quien integra navigation-menu. Los detalles normativos conservan el texto canónico del registro.

Ver JSON
Soporte
Gestionado por la primitiva
Patrón
navigation
Radix Navigation Menu
Interacciones de teclado para navigation-menu
TeclasComportamiento
Enter SpaceActivate the focused control.
ArrowUp ArrowDown ArrowLeft ArrowRightMove within the composite control.
EscapeClose the open surface and restore focus.

Semántica incorporada

  • Keyboard-focusable triggers manage expanded content; active links can expose aria-current.

Responsabilidades de integración

  • Wrap the component in a labelled nav landmark when multiple navigation regions exist.