use-menu.mjs 698 B

1234567891011121314151617181920212223242526272829
  1. import { computed } from 'vue';
  2. function useMenu(instance, currentIndex) {
  3. const indexPath = computed(() => {
  4. let parent = instance.parent;
  5. const path = [currentIndex.value];
  6. while (parent.type.name !== "ElMenu") {
  7. if (parent.props.index) {
  8. path.unshift(parent.props.index);
  9. }
  10. parent = parent.parent;
  11. }
  12. return path;
  13. });
  14. const parentMenu = computed(() => {
  15. let parent = instance.parent;
  16. while (parent && !["ElMenu", "ElSubMenu"].includes(parent.type.name)) {
  17. parent = parent.parent;
  18. }
  19. return parent;
  20. });
  21. return {
  22. parentMenu,
  23. indexPath
  24. };
  25. }
  26. export { useMenu as default };
  27. //# sourceMappingURL=use-menu.mjs.map