vertical.vue 3.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. <template>
  2. <el-row class="tac">
  3. <el-col :span="12">
  4. <h5 class="mb-2">Default colors</h5>
  5. <el-menu default-active="2" class="el-menu-vertical-demo" @open="handleOpen" @close="handleClose">
  6. <el-sub-menu index="1">
  7. <template #title>
  8. <el-icon><location /></el-icon>
  9. <span>Navigator One</span>
  10. </template>
  11. <el-menu-item-group title="Group One">
  12. <el-menu-item index="1-1">item one</el-menu-item>
  13. <el-menu-item index="1-2">item two</el-menu-item>
  14. </el-menu-item-group>
  15. <el-menu-item-group title="Group Two">
  16. <el-menu-item index="1-3">item three</el-menu-item>
  17. </el-menu-item-group>
  18. <el-sub-menu index="1-4">
  19. <template #title>item four</template>
  20. <el-menu-item index="1-4-1">item one</el-menu-item>
  21. </el-sub-menu>
  22. </el-sub-menu>
  23. <el-menu-item index="2">
  24. <el-icon><icon-menu /></el-icon>
  25. <span>Navigator Two</span>
  26. </el-menu-item>
  27. <el-menu-item index="3" disabled>
  28. <el-icon><document /></el-icon>
  29. <span>Navigator Three</span>
  30. </el-menu-item>
  31. <el-menu-item index="4">
  32. <el-icon><setting /></el-icon>
  33. <span>Navigator Four</span>
  34. </el-menu-item>
  35. </el-menu>
  36. </el-col>
  37. <el-col :span="12">
  38. <h5 class="mb-2">Custom colors</h5>
  39. <el-menu active-text-color="#ffd04b" background-color="#545c64" class="el-menu-vertical-demo" default-active="2" text-color="#fff" @open="handleOpen" @close="handleClose">
  40. <el-sub-menu index="1">
  41. <template #title>
  42. <el-icon><location /></el-icon>
  43. <span>Navigator One</span>
  44. </template>
  45. <el-menu-item-group title="Group One">
  46. <el-menu-item index="1-1">item one</el-menu-item>
  47. <el-menu-item index="1-2">item two</el-menu-item>
  48. </el-menu-item-group>
  49. <el-menu-item-group title="Group Two">
  50. <el-menu-item index="1-3">item three</el-menu-item>
  51. </el-menu-item-group>
  52. <el-sub-menu index="1-4">
  53. <template #title>item four</template>
  54. <el-menu-item index="1-4-1">item one</el-menu-item>
  55. </el-sub-menu>
  56. </el-sub-menu>
  57. <el-menu-item index="2">
  58. <el-icon><icon-menu /></el-icon>
  59. <span>Navigator Two</span>
  60. </el-menu-item>
  61. <el-menu-item index="3" disabled>
  62. <el-icon><document /></el-icon>
  63. <span>Navigator Three</span>
  64. </el-menu-item>
  65. <el-menu-item index="4">
  66. <el-icon><setting /></el-icon>
  67. <span>Navigator Four</span>
  68. </el-menu-item>
  69. </el-menu>
  70. </el-col>
  71. </el-row>
  72. </template>
  73. <script lang="ts" setup>
  74. import { Document, Menu as IconMenu, Location, Setting } from '@element-plus/icons-vue'
  75. const handleOpen = (key: string, keyPath: string[]) => {
  76. console.log(key, keyPath)
  77. }
  78. const handleClose = (key: string, keyPath: string[]) => {
  79. console.log(key, keyPath)
  80. }
  81. </script>