• English
  • Espanol
  • Editar
  • Duplicar
  • Archivar
  • bottom left
  • bottom right
  • top left
  • top right
  • primary
  • secondary
  • success
  • warning
  • xs
  • sm
  • md
  • lg
  • xl
  • default
  • Editar
  • Duplicar
  • Editar
  • Archivar
  • Editar
  • Duplicar
  • Archivar
  • Editar
  • Duplicar
  • Editar
  • Duplicar
  • Editar
  • Mover a
  • Proyecto
  • Personal
  • Editar
  • Archivar
  • Primeros pasos
  • Introduccion
    Instalacion
    Inicio rapido
    Integracion con Nuxt
  • DiseƱo
  • Colores
    Tipografia
    Configuracion de iconos
    Superficies
  • Temas
  • Resumen
    API de tema en runtime
    Tokens de diseno
    Variables CSS
    Temas claro y oscuro
    Temas personalizados
  • Componentes
  • Acciones base
  • Button

  • Formularios
  • Form

  • Campos de formulario
  • Textfield
    Textarea
    Select
    Checkbox
    Radio
    Switch
    Date Picker
    Time Picker

  • Navegacion
  • Lista
    Menu
    Tabs

  • Layout
  • App shell
    Barra
    Drawer
    Grid

  • Feedback y overlays
  • Dialog
    Progress

  • Datos y agenda
  • Card
    Schedule

  • Utilidades
  • Flexbox
    Helpers de espaciado
    Helpers de display
    Elevacion
  • Avanzado
  • API de plugin
    Composables
    Directivas
En esta pagina

Menu

El componente EMenu ancla contenido contextual a un activador y coordina su posicion, estado de apertura, cierre, foco y capas. Componlo con EList para menus de acciones o proporciona contenido interactivo personalizado cuando el overlay deba permanecer abierto.

Uso

Usa el playground para configurar las decisiones mas comunes del menu. El slot activador propaga los bindings de clic, teclado y ARIA mediante attrs, mientras v-model expone el estado de apertura actual.


bottom left
primary
default

Patrones de activador

Prefiere el slot nombrado activator para mantener juntos el activador y el menu. Usa la prop activator con un ref de elemento cuando otro componente sea propietario del activador; los selectores estan disponibles para objetivos DOM estables.

Posicion y offsets

Define el borde preferido con origin y luego aplica offsetX y offsetY. El menu puede cambiar al lado con mas espacio, mientras checkOffset mantiene la superficie dentro del viewport.

Tamano y superficie

Por defecto, el menu acomoda tanto su activador como su contenido. Usa fitContent para el ancho intrinseco, fullWidth para igualar el activador o dimensiones explicitas cuando el diseno requiera una superficie fija.

Transiciones

Los menus usan la transicion fade por defecto, por lo que puedes omitir la prop. Define transition="scale" cuando la superficie deba crecer desde su origen al aparecer.

Estados de apertura, cierre y deshabilitado

Controla la visibilidad con v-model. Configura el cierre por seleccion con closeOnContentClick, impide la apertura con disableMenu o llama los metodos expuestos para flujos dirigidos por la aplicacion.

Patrones de composicion

Compone EMenu con EList para acciones compactas. Para filtros, pickers u otro contenido de varios pasos, manten el overlay abierto y cierralo explicitamente al completar la tarea.

Menus anidados y capas

Los menus anidados forman una rama de overlays compartida. Cada hijo recibe la siguiente capa, la interaccion exterior cierra las ramas no relacionadas y Escape cierra primero el menu abierto superior.

Accesibilidad y teclado

Los bindings del activador sincronizan aria-haspopup, aria-expanded, aria-controls y el estado deshabilitado. Enter, Space o Flecha abajo abren el menu; Escape cierra la capa superior y el foco regresa al activador.

Enfoca el activador y presiona Enter, Space o Flecha abajo. Presiona Escape para cerrar.

Referencia API

Consulta las props publicas verificadas de EMenu. Los eventos, slots y metodos expuestos se resumen despues de la tabla.

PropiedadTipoPor defecto
modelValuebooleanfalse

Estado de apertura controlado y sincronizado mediante update:modelValue.

activatorMenuTypeTargetslot activator

Activador externo resuelto desde un elemento, selector CSS o ref de elemento.

closeOnContentClickbooleanfalse

Cierra el menu cuando su superficie de contenido recibe un clic.

disableMenubooleanfalse

Impide la activacion por clic y teclado conservando el estado ARIA.

fitContent / fullWidthbooleanfalse

Usa el ancho intrinseco del contenido o iguala exactamente el ancho del activador.

width / maxWidthstring | numberundefined

Define un ancho explicito o limita el ancho maximo del menu.

originstring"bottom left"

Posicion vertical y horizontal preferida respecto al activador.

offsetX / offsetYstring | number0

Desplaza el menu desde su posicion horizontal o vertical resuelta.

checkOffsetbooleanfalse

Ajusta la posicion resuelta para mantener el menu dentro de los margenes del viewport.

holdFocusbooleanfalse

Mantiene el foco en el elemento actual en lugar de moverlo al menu o devolverlo al activador.

transitionstring"fade"

Nombra la transicion Vue usada al abrir y cerrar el contenido.

color / elevationstring / Elevationundefined / "sm"

Define el color frontal del contenido y la elevacion de la superficie.

ariaHaspopup / ariaControlsstring"menu" / id generado

Sobrescribe los atributos de relacion generados para el activador.

contentRolestring"menu"

Define el rol del contenido teletransportado. Usa presentation cuando un hijo tenga la semantica.

Eventos, slots y metodos

EMenu emite update:modelValue. Los slots publicos son activator y default. El componente expone openMenu() y closeMenu().

Navegacion

Continua con el tema anterior o siguiente.

Lista

Anterior

Tabs

Siguiente