Usa NeuMenuItem con claves estables y children. A diferencia de los grupos en línea de Menu, TieredMenu abre los niveles hijos en paneles conectados. Las hojas admiten acciones de la aplicación y destinos de enlace. Las entradas ocultas, desactivadas y los separadores conservan su comportamiento. neuMenuItem sustituye el contenido visible en todos los niveles.
Proporciona expandedKeys y acepta expandedKeysChange para controlar la ruta abierta; omítelo para el estado interno. Abrir una rama sustituye la ruta del grupo hermano anterior. Activar una hoja ejecuta command, emite itemClick y propone cerrar los submenús. La interacción exterior también propone cerrarlos.
Usa arriba/abajo e Inicio/Fin dentro de un nivel, derecha/izquierda para entrar o regresar desde un submenú (invertidas en RTL), y Escape para cerrar el nivel más profundo y devolver el foco. La búsqueda por letras encuentra etiquetas. Mantén el contenido personalizado como presentación: el control del menú debe seguir siendo el único destino de foco.
Tecla
Acción
Tab
Entra o sale de las acciones disponibles del menú.
ArrowUp / ArrowDown
Recorre las acciones disponibles del nivel actual.
ArrowRight / ArrowLeft
Entra o vuelve de un submenú; las direcciones se invierten en RTL.
Home
Enfoca la primera acción disponible del nivel.
End
Enfoca la última acción disponible del nivel.
Enter
Activa la acción habilitada enfocada o abre su grupo.
Space
Activa la acción habilitada enfocada o abre su grupo.
A–Z
Busca acciones disponibles por su etiqueta.
Escape
Cierra el submenú abierto más profundo; un menú emergente devuelve el foco al activador.
Inputs y Outputs corresponden al paquete instalado. Los tipos con nombre enlazan a sus definiciones. Cada Template/proyección disponible tiene un ejemplo ejecutable.
Inputs
Configura el componente con [propiedad]="valor". Tu aplicación proporciona estos valores; el componente no debe reemplazar el estado que le pasas.
Nombre
Tipo
Por defecto
Uso en el template
Descripción
ariaLabel
string
'Tiered menu'
[ariaLabel]
Nombre accesible de la navegación/menú. Usa una etiqueta específica de esta región.
expandedKeys
readonly string[] | undefined
undefined
[expandedKeys]
Claves de ramas aplicadas; undefined activa la expansión gestionada por el componente.
Emite la hoja/acción activada. El command opcional se ejecuta antes; las entradas desactivadas no se activan.
Templates
ng-content proyecta contenido dentro del componente. Los inputs TemplateRef reciben un template; las directivas ng-template identifican templates con un contexto tipado. Una directiva compartida en el entrypoint no es necesariamente un slot de este componente.
Utiliza los tokens públicos disponibles. La resolución de iconos y el diseño que rodea al ejemplo pertenecen a la aplicación. Comprueba ambos temas y pantallas estrechas.
Tokens específicos
Este componente utiliza tokens compartidos del tema en lugar de tokens específicos.
Tokens compartidos utilizados
Sobrescríbelos en un contenedor local para afectar a este ejemplo. Una modificación en :root afecta a los demás componentes que utilizan el mismo token.