multiple-selection.vue 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108
  1. <template>
  2. <div class="m-4">
  3. <p>Display all tags (default)</p>
  4. <el-cascader :options="options" :props="props" clearable />
  5. </div>
  6. <div class="m-4">
  7. <p>Collapse tags</p>
  8. <el-cascader :options="options" :props="props" collapse-tags clearable />
  9. </div>
  10. <div class="m-4">
  11. <p>Collapse tags tooltip</p>
  12. <el-cascader
  13. :options="options"
  14. :props="props"
  15. collapse-tags
  16. collapse-tags-tooltip
  17. clearable
  18. />
  19. </div>
  20. </template>
  21. <script lang="ts" setup>
  22. const props = { multiple: true }
  23. const options = [
  24. {
  25. value: 1,
  26. label: 'Asia',
  27. children: [
  28. {
  29. value: 2,
  30. label: 'China',
  31. children: [
  32. { value: 3, label: 'Beijing' },
  33. { value: 4, label: 'Shanghai' },
  34. { value: 5, label: 'Hangzhou' },
  35. ],
  36. },
  37. {
  38. value: 6,
  39. label: 'Japan',
  40. children: [
  41. { value: 7, label: 'Tokyo' },
  42. { value: 8, label: 'Osaka' },
  43. { value: 9, label: 'Kyoto' },
  44. ],
  45. },
  46. {
  47. value: 10,
  48. label: 'Korea',
  49. children: [
  50. { value: 11, label: 'Seoul' },
  51. { value: 12, label: 'Busan' },
  52. { value: 13, label: 'Taegu' },
  53. ],
  54. },
  55. ],
  56. },
  57. {
  58. value: 14,
  59. label: 'Europe',
  60. children: [
  61. {
  62. value: 15,
  63. label: 'France',
  64. children: [
  65. { value: 16, label: 'Paris' },
  66. { value: 17, label: 'Marseille' },
  67. { value: 18, label: 'Lyon' },
  68. ],
  69. },
  70. {
  71. value: 19,
  72. label: 'UK',
  73. children: [
  74. { value: 20, label: 'London' },
  75. { value: 21, label: 'Birmingham' },
  76. { value: 22, label: 'Manchester' },
  77. ],
  78. },
  79. ],
  80. },
  81. {
  82. value: 23,
  83. label: 'North America',
  84. children: [
  85. {
  86. value: 24,
  87. label: 'US',
  88. children: [
  89. { value: 25, label: 'New York' },
  90. { value: 26, label: 'Los Angeles' },
  91. { value: 27, label: 'Washington' },
  92. ],
  93. },
  94. {
  95. value: 28,
  96. label: 'Canada',
  97. children: [
  98. { value: 29, label: 'Toronto' },
  99. { value: 30, label: 'Montreal' },
  100. { value: 31, label: 'Ottawa' },
  101. ],
  102. },
  103. ],
  104. },
  105. ]
  106. </script>