From b12ae2b68ca4341dc25d6b2c8de4b641b8f4e886 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E6=9C=89=E6=9D=A5=E6=8A=80=E6=9C=AF?= <1490493387@qq.com>
Date: Wed, 15 Dec 2021 23:46:10 +0800
Subject: [PATCH] =?UTF-8?q?feat:=E5=BC=95=E5=85=A5TreeSelect=E5=92=8CIconS?=
=?UTF-8?q?elect=E7=BB=84=E4=BB=B6?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/assets/icons/{ => svg}/404.svg | 0
src/assets/icons/{ => svg}/await.svg | 0
src/assets/icons/{ => svg}/bug.svg | 0
src/assets/icons/{ => svg}/build.svg | 0
src/assets/icons/{ => svg}/button.svg | 0
src/assets/icons/{ => svg}/cascader.svg | 0
src/assets/icons/{ => svg}/chart.svg | 0
src/assets/icons/{ => svg}/checkbox.svg | 0
src/assets/icons/{ => svg}/clipboard.svg | 0
src/assets/icons/{ => svg}/code.svg | 0
src/assets/icons/{ => svg}/color.svg | 0
src/assets/icons/{ => svg}/component.svg | 0
src/assets/icons/{ => svg}/dashboard.svg | 0
src/assets/icons/{ => svg}/date-range.svg | 0
src/assets/icons/{ => svg}/date.svg | 0
src/assets/icons/{ => svg}/dict.svg | 0
src/assets/icons/{ => svg}/documentation.svg | 0
src/assets/icons/{ => svg}/download.svg | 0
src/assets/icons/{ => svg}/drag.svg | 0
src/assets/icons/{ => svg}/druid.svg | 0
src/assets/icons/{ => svg}/edit.svg | 0
src/assets/icons/{ => svg}/education.svg | 0
src/assets/icons/{ => svg}/email.svg | 0
src/assets/icons/{ => svg}/example.svg | 0
src/assets/icons/{ => svg}/excel.svg | 0
.../icons/{ => svg}/exit-fullscreen.svg | 0
src/assets/icons/{ => svg}/eye-open.svg | 0
src/assets/icons/{ => svg}/eye.svg | 0
src/assets/icons/{ => svg}/form.svg | 0
src/assets/icons/{ => svg}/fullscreen.svg | 0
src/assets/icons/{ => svg}/github.svg | 0
src/assets/icons/{ => svg}/guide.svg | 0
src/assets/icons/{ => svg}/icon.svg | 0
src/assets/icons/{ => svg}/input.svg | 0
src/assets/icons/{ => svg}/international.svg | 0
src/assets/icons/{ => svg}/ip.svg | 0
src/assets/icons/{ => svg}/job.svg | 0
src/assets/icons/{ => svg}/language.svg | 0
src/assets/icons/{ => svg}/link.svg | 0
src/assets/icons/{ => svg}/list.svg | 0
src/assets/icons/{ => svg}/lock.svg | 0
src/assets/icons/{ => svg}/log.svg | 0
src/assets/icons/{ => svg}/logininfor.svg | 0
src/assets/icons/{ => svg}/menu.svg | 0
src/assets/icons/{ => svg}/message.svg | 0
src/assets/icons/{ => svg}/money.svg | 0
src/assets/icons/{ => svg}/monitor.svg | 0
src/assets/icons/{ => svg}/nested.svg | 0
src/assets/icons/{ => svg}/nodata.svg | 0
src/assets/icons/{ => svg}/number.svg | 0
src/assets/icons/{ => svg}/offline.svg | 0
src/assets/icons/{ => svg}/online.svg | 0
src/assets/icons/{ => svg}/password.svg | 0
src/assets/icons/{ => svg}/pdf.svg | 0
src/assets/icons/{ => svg}/people.svg | 0
src/assets/icons/{ => svg}/peoples.svg | 0
src/assets/icons/{ => svg}/perm.svg | 0
src/assets/icons/{ => svg}/phone.svg | 0
src/assets/icons/{ => svg}/post.svg | 0
src/assets/icons/{ => svg}/qq.svg | 0
src/assets/icons/{ => svg}/question.svg | 0
src/assets/icons/{ => svg}/radio.svg | 0
src/assets/icons/{ => svg}/rate.svg | 0
src/assets/icons/{ => svg}/redis.svg | 0
src/assets/icons/{ => svg}/route.svg | 0
src/assets/icons/{ => svg}/row.svg | 0
src/assets/icons/{ => svg}/search.svg | 0
src/assets/icons/{ => svg}/select.svg | 0
src/assets/icons/{ => svg}/server.svg | 0
src/assets/icons/{ => svg}/shopping.svg | 0
src/assets/icons/{ => svg}/size.svg | 0
src/assets/icons/{ => svg}/skill.svg | 0
src/assets/icons/{ => svg}/slider.svg | 0
src/assets/icons/{ => svg}/star.svg | 0
src/assets/icons/{ => svg}/swagger.svg | 0
src/assets/icons/{ => svg}/switch.svg | 0
src/assets/icons/{ => svg}/system.svg | 0
src/assets/icons/{ => svg}/tab.svg | 0
src/assets/icons/{ => svg}/table.svg | 0
src/assets/icons/{ => svg}/textarea.svg | 0
src/assets/icons/{ => svg}/theme.svg | 0
src/assets/icons/{ => svg}/time-range.svg | 0
src/assets/icons/{ => svg}/time.svg | 0
src/assets/icons/{ => svg}/tool.svg | 0
src/assets/icons/{ => svg}/tree-table.svg | 0
src/assets/icons/{ => svg}/tree.svg | 0
src/assets/icons/{ => svg}/upload.svg | 0
src/assets/icons/{ => svg}/user.svg | 0
src/assets/icons/{ => svg}/validCode.svg | 0
src/assets/icons/{ => svg}/wechat.svg | 0
src/assets/icons/{ => svg}/zip.svg | 0
src/components/IconSelect/index.vue | 83 +++++
src/components/TreeSelect/index.vue | 304 ++++++++----------
src/views/system/menu/components/Menu.vue | 60 +++-
vite.config.ts | 3 +-
95 files changed, 264 insertions(+), 186 deletions(-)
rename src/assets/icons/{ => svg}/404.svg (100%)
rename src/assets/icons/{ => svg}/await.svg (100%)
rename src/assets/icons/{ => svg}/bug.svg (100%)
rename src/assets/icons/{ => svg}/build.svg (100%)
rename src/assets/icons/{ => svg}/button.svg (100%)
rename src/assets/icons/{ => svg}/cascader.svg (100%)
rename src/assets/icons/{ => svg}/chart.svg (100%)
rename src/assets/icons/{ => svg}/checkbox.svg (100%)
rename src/assets/icons/{ => svg}/clipboard.svg (100%)
rename src/assets/icons/{ => svg}/code.svg (100%)
rename src/assets/icons/{ => svg}/color.svg (100%)
rename src/assets/icons/{ => svg}/component.svg (100%)
rename src/assets/icons/{ => svg}/dashboard.svg (100%)
rename src/assets/icons/{ => svg}/date-range.svg (100%)
rename src/assets/icons/{ => svg}/date.svg (100%)
rename src/assets/icons/{ => svg}/dict.svg (100%)
rename src/assets/icons/{ => svg}/documentation.svg (100%)
rename src/assets/icons/{ => svg}/download.svg (100%)
rename src/assets/icons/{ => svg}/drag.svg (100%)
rename src/assets/icons/{ => svg}/druid.svg (100%)
rename src/assets/icons/{ => svg}/edit.svg (100%)
rename src/assets/icons/{ => svg}/education.svg (100%)
rename src/assets/icons/{ => svg}/email.svg (100%)
rename src/assets/icons/{ => svg}/example.svg (100%)
rename src/assets/icons/{ => svg}/excel.svg (100%)
rename src/assets/icons/{ => svg}/exit-fullscreen.svg (100%)
rename src/assets/icons/{ => svg}/eye-open.svg (100%)
rename src/assets/icons/{ => svg}/eye.svg (100%)
rename src/assets/icons/{ => svg}/form.svg (100%)
rename src/assets/icons/{ => svg}/fullscreen.svg (100%)
rename src/assets/icons/{ => svg}/github.svg (100%)
rename src/assets/icons/{ => svg}/guide.svg (100%)
rename src/assets/icons/{ => svg}/icon.svg (100%)
rename src/assets/icons/{ => svg}/input.svg (100%)
rename src/assets/icons/{ => svg}/international.svg (100%)
rename src/assets/icons/{ => svg}/ip.svg (100%)
rename src/assets/icons/{ => svg}/job.svg (100%)
rename src/assets/icons/{ => svg}/language.svg (100%)
rename src/assets/icons/{ => svg}/link.svg (100%)
rename src/assets/icons/{ => svg}/list.svg (100%)
rename src/assets/icons/{ => svg}/lock.svg (100%)
rename src/assets/icons/{ => svg}/log.svg (100%)
rename src/assets/icons/{ => svg}/logininfor.svg (100%)
rename src/assets/icons/{ => svg}/menu.svg (100%)
rename src/assets/icons/{ => svg}/message.svg (100%)
rename src/assets/icons/{ => svg}/money.svg (100%)
rename src/assets/icons/{ => svg}/monitor.svg (100%)
rename src/assets/icons/{ => svg}/nested.svg (100%)
rename src/assets/icons/{ => svg}/nodata.svg (100%)
rename src/assets/icons/{ => svg}/number.svg (100%)
rename src/assets/icons/{ => svg}/offline.svg (100%)
rename src/assets/icons/{ => svg}/online.svg (100%)
rename src/assets/icons/{ => svg}/password.svg (100%)
rename src/assets/icons/{ => svg}/pdf.svg (100%)
rename src/assets/icons/{ => svg}/people.svg (100%)
rename src/assets/icons/{ => svg}/peoples.svg (100%)
rename src/assets/icons/{ => svg}/perm.svg (100%)
rename src/assets/icons/{ => svg}/phone.svg (100%)
rename src/assets/icons/{ => svg}/post.svg (100%)
rename src/assets/icons/{ => svg}/qq.svg (100%)
rename src/assets/icons/{ => svg}/question.svg (100%)
rename src/assets/icons/{ => svg}/radio.svg (100%)
rename src/assets/icons/{ => svg}/rate.svg (100%)
rename src/assets/icons/{ => svg}/redis.svg (100%)
rename src/assets/icons/{ => svg}/route.svg (100%)
rename src/assets/icons/{ => svg}/row.svg (100%)
rename src/assets/icons/{ => svg}/search.svg (100%)
rename src/assets/icons/{ => svg}/select.svg (100%)
rename src/assets/icons/{ => svg}/server.svg (100%)
rename src/assets/icons/{ => svg}/shopping.svg (100%)
rename src/assets/icons/{ => svg}/size.svg (100%)
rename src/assets/icons/{ => svg}/skill.svg (100%)
rename src/assets/icons/{ => svg}/slider.svg (100%)
rename src/assets/icons/{ => svg}/star.svg (100%)
rename src/assets/icons/{ => svg}/swagger.svg (100%)
rename src/assets/icons/{ => svg}/switch.svg (100%)
rename src/assets/icons/{ => svg}/system.svg (100%)
rename src/assets/icons/{ => svg}/tab.svg (100%)
rename src/assets/icons/{ => svg}/table.svg (100%)
rename src/assets/icons/{ => svg}/textarea.svg (100%)
rename src/assets/icons/{ => svg}/theme.svg (100%)
rename src/assets/icons/{ => svg}/time-range.svg (100%)
rename src/assets/icons/{ => svg}/time.svg (100%)
rename src/assets/icons/{ => svg}/tool.svg (100%)
rename src/assets/icons/{ => svg}/tree-table.svg (100%)
rename src/assets/icons/{ => svg}/tree.svg (100%)
rename src/assets/icons/{ => svg}/upload.svg (100%)
rename src/assets/icons/{ => svg}/user.svg (100%)
rename src/assets/icons/{ => svg}/validCode.svg (100%)
rename src/assets/icons/{ => svg}/wechat.svg (100%)
rename src/assets/icons/{ => svg}/zip.svg (100%)
create mode 100644 src/components/IconSelect/index.vue
diff --git a/src/assets/icons/404.svg b/src/assets/icons/svg/404.svg
similarity index 100%
rename from src/assets/icons/404.svg
rename to src/assets/icons/svg/404.svg
diff --git a/src/assets/icons/await.svg b/src/assets/icons/svg/await.svg
similarity index 100%
rename from src/assets/icons/await.svg
rename to src/assets/icons/svg/await.svg
diff --git a/src/assets/icons/bug.svg b/src/assets/icons/svg/bug.svg
similarity index 100%
rename from src/assets/icons/bug.svg
rename to src/assets/icons/svg/bug.svg
diff --git a/src/assets/icons/build.svg b/src/assets/icons/svg/build.svg
similarity index 100%
rename from src/assets/icons/build.svg
rename to src/assets/icons/svg/build.svg
diff --git a/src/assets/icons/button.svg b/src/assets/icons/svg/button.svg
similarity index 100%
rename from src/assets/icons/button.svg
rename to src/assets/icons/svg/button.svg
diff --git a/src/assets/icons/cascader.svg b/src/assets/icons/svg/cascader.svg
similarity index 100%
rename from src/assets/icons/cascader.svg
rename to src/assets/icons/svg/cascader.svg
diff --git a/src/assets/icons/chart.svg b/src/assets/icons/svg/chart.svg
similarity index 100%
rename from src/assets/icons/chart.svg
rename to src/assets/icons/svg/chart.svg
diff --git a/src/assets/icons/checkbox.svg b/src/assets/icons/svg/checkbox.svg
similarity index 100%
rename from src/assets/icons/checkbox.svg
rename to src/assets/icons/svg/checkbox.svg
diff --git a/src/assets/icons/clipboard.svg b/src/assets/icons/svg/clipboard.svg
similarity index 100%
rename from src/assets/icons/clipboard.svg
rename to src/assets/icons/svg/clipboard.svg
diff --git a/src/assets/icons/code.svg b/src/assets/icons/svg/code.svg
similarity index 100%
rename from src/assets/icons/code.svg
rename to src/assets/icons/svg/code.svg
diff --git a/src/assets/icons/color.svg b/src/assets/icons/svg/color.svg
similarity index 100%
rename from src/assets/icons/color.svg
rename to src/assets/icons/svg/color.svg
diff --git a/src/assets/icons/component.svg b/src/assets/icons/svg/component.svg
similarity index 100%
rename from src/assets/icons/component.svg
rename to src/assets/icons/svg/component.svg
diff --git a/src/assets/icons/dashboard.svg b/src/assets/icons/svg/dashboard.svg
similarity index 100%
rename from src/assets/icons/dashboard.svg
rename to src/assets/icons/svg/dashboard.svg
diff --git a/src/assets/icons/date-range.svg b/src/assets/icons/svg/date-range.svg
similarity index 100%
rename from src/assets/icons/date-range.svg
rename to src/assets/icons/svg/date-range.svg
diff --git a/src/assets/icons/date.svg b/src/assets/icons/svg/date.svg
similarity index 100%
rename from src/assets/icons/date.svg
rename to src/assets/icons/svg/date.svg
diff --git a/src/assets/icons/dict.svg b/src/assets/icons/svg/dict.svg
similarity index 100%
rename from src/assets/icons/dict.svg
rename to src/assets/icons/svg/dict.svg
diff --git a/src/assets/icons/documentation.svg b/src/assets/icons/svg/documentation.svg
similarity index 100%
rename from src/assets/icons/documentation.svg
rename to src/assets/icons/svg/documentation.svg
diff --git a/src/assets/icons/download.svg b/src/assets/icons/svg/download.svg
similarity index 100%
rename from src/assets/icons/download.svg
rename to src/assets/icons/svg/download.svg
diff --git a/src/assets/icons/drag.svg b/src/assets/icons/svg/drag.svg
similarity index 100%
rename from src/assets/icons/drag.svg
rename to src/assets/icons/svg/drag.svg
diff --git a/src/assets/icons/druid.svg b/src/assets/icons/svg/druid.svg
similarity index 100%
rename from src/assets/icons/druid.svg
rename to src/assets/icons/svg/druid.svg
diff --git a/src/assets/icons/edit.svg b/src/assets/icons/svg/edit.svg
similarity index 100%
rename from src/assets/icons/edit.svg
rename to src/assets/icons/svg/edit.svg
diff --git a/src/assets/icons/education.svg b/src/assets/icons/svg/education.svg
similarity index 100%
rename from src/assets/icons/education.svg
rename to src/assets/icons/svg/education.svg
diff --git a/src/assets/icons/email.svg b/src/assets/icons/svg/email.svg
similarity index 100%
rename from src/assets/icons/email.svg
rename to src/assets/icons/svg/email.svg
diff --git a/src/assets/icons/example.svg b/src/assets/icons/svg/example.svg
similarity index 100%
rename from src/assets/icons/example.svg
rename to src/assets/icons/svg/example.svg
diff --git a/src/assets/icons/excel.svg b/src/assets/icons/svg/excel.svg
similarity index 100%
rename from src/assets/icons/excel.svg
rename to src/assets/icons/svg/excel.svg
diff --git a/src/assets/icons/exit-fullscreen.svg b/src/assets/icons/svg/exit-fullscreen.svg
similarity index 100%
rename from src/assets/icons/exit-fullscreen.svg
rename to src/assets/icons/svg/exit-fullscreen.svg
diff --git a/src/assets/icons/eye-open.svg b/src/assets/icons/svg/eye-open.svg
similarity index 100%
rename from src/assets/icons/eye-open.svg
rename to src/assets/icons/svg/eye-open.svg
diff --git a/src/assets/icons/eye.svg b/src/assets/icons/svg/eye.svg
similarity index 100%
rename from src/assets/icons/eye.svg
rename to src/assets/icons/svg/eye.svg
diff --git a/src/assets/icons/form.svg b/src/assets/icons/svg/form.svg
similarity index 100%
rename from src/assets/icons/form.svg
rename to src/assets/icons/svg/form.svg
diff --git a/src/assets/icons/fullscreen.svg b/src/assets/icons/svg/fullscreen.svg
similarity index 100%
rename from src/assets/icons/fullscreen.svg
rename to src/assets/icons/svg/fullscreen.svg
diff --git a/src/assets/icons/github.svg b/src/assets/icons/svg/github.svg
similarity index 100%
rename from src/assets/icons/github.svg
rename to src/assets/icons/svg/github.svg
diff --git a/src/assets/icons/guide.svg b/src/assets/icons/svg/guide.svg
similarity index 100%
rename from src/assets/icons/guide.svg
rename to src/assets/icons/svg/guide.svg
diff --git a/src/assets/icons/icon.svg b/src/assets/icons/svg/icon.svg
similarity index 100%
rename from src/assets/icons/icon.svg
rename to src/assets/icons/svg/icon.svg
diff --git a/src/assets/icons/input.svg b/src/assets/icons/svg/input.svg
similarity index 100%
rename from src/assets/icons/input.svg
rename to src/assets/icons/svg/input.svg
diff --git a/src/assets/icons/international.svg b/src/assets/icons/svg/international.svg
similarity index 100%
rename from src/assets/icons/international.svg
rename to src/assets/icons/svg/international.svg
diff --git a/src/assets/icons/ip.svg b/src/assets/icons/svg/ip.svg
similarity index 100%
rename from src/assets/icons/ip.svg
rename to src/assets/icons/svg/ip.svg
diff --git a/src/assets/icons/job.svg b/src/assets/icons/svg/job.svg
similarity index 100%
rename from src/assets/icons/job.svg
rename to src/assets/icons/svg/job.svg
diff --git a/src/assets/icons/language.svg b/src/assets/icons/svg/language.svg
similarity index 100%
rename from src/assets/icons/language.svg
rename to src/assets/icons/svg/language.svg
diff --git a/src/assets/icons/link.svg b/src/assets/icons/svg/link.svg
similarity index 100%
rename from src/assets/icons/link.svg
rename to src/assets/icons/svg/link.svg
diff --git a/src/assets/icons/list.svg b/src/assets/icons/svg/list.svg
similarity index 100%
rename from src/assets/icons/list.svg
rename to src/assets/icons/svg/list.svg
diff --git a/src/assets/icons/lock.svg b/src/assets/icons/svg/lock.svg
similarity index 100%
rename from src/assets/icons/lock.svg
rename to src/assets/icons/svg/lock.svg
diff --git a/src/assets/icons/log.svg b/src/assets/icons/svg/log.svg
similarity index 100%
rename from src/assets/icons/log.svg
rename to src/assets/icons/svg/log.svg
diff --git a/src/assets/icons/logininfor.svg b/src/assets/icons/svg/logininfor.svg
similarity index 100%
rename from src/assets/icons/logininfor.svg
rename to src/assets/icons/svg/logininfor.svg
diff --git a/src/assets/icons/menu.svg b/src/assets/icons/svg/menu.svg
similarity index 100%
rename from src/assets/icons/menu.svg
rename to src/assets/icons/svg/menu.svg
diff --git a/src/assets/icons/message.svg b/src/assets/icons/svg/message.svg
similarity index 100%
rename from src/assets/icons/message.svg
rename to src/assets/icons/svg/message.svg
diff --git a/src/assets/icons/money.svg b/src/assets/icons/svg/money.svg
similarity index 100%
rename from src/assets/icons/money.svg
rename to src/assets/icons/svg/money.svg
diff --git a/src/assets/icons/monitor.svg b/src/assets/icons/svg/monitor.svg
similarity index 100%
rename from src/assets/icons/monitor.svg
rename to src/assets/icons/svg/monitor.svg
diff --git a/src/assets/icons/nested.svg b/src/assets/icons/svg/nested.svg
similarity index 100%
rename from src/assets/icons/nested.svg
rename to src/assets/icons/svg/nested.svg
diff --git a/src/assets/icons/nodata.svg b/src/assets/icons/svg/nodata.svg
similarity index 100%
rename from src/assets/icons/nodata.svg
rename to src/assets/icons/svg/nodata.svg
diff --git a/src/assets/icons/number.svg b/src/assets/icons/svg/number.svg
similarity index 100%
rename from src/assets/icons/number.svg
rename to src/assets/icons/svg/number.svg
diff --git a/src/assets/icons/offline.svg b/src/assets/icons/svg/offline.svg
similarity index 100%
rename from src/assets/icons/offline.svg
rename to src/assets/icons/svg/offline.svg
diff --git a/src/assets/icons/online.svg b/src/assets/icons/svg/online.svg
similarity index 100%
rename from src/assets/icons/online.svg
rename to src/assets/icons/svg/online.svg
diff --git a/src/assets/icons/password.svg b/src/assets/icons/svg/password.svg
similarity index 100%
rename from src/assets/icons/password.svg
rename to src/assets/icons/svg/password.svg
diff --git a/src/assets/icons/pdf.svg b/src/assets/icons/svg/pdf.svg
similarity index 100%
rename from src/assets/icons/pdf.svg
rename to src/assets/icons/svg/pdf.svg
diff --git a/src/assets/icons/people.svg b/src/assets/icons/svg/people.svg
similarity index 100%
rename from src/assets/icons/people.svg
rename to src/assets/icons/svg/people.svg
diff --git a/src/assets/icons/peoples.svg b/src/assets/icons/svg/peoples.svg
similarity index 100%
rename from src/assets/icons/peoples.svg
rename to src/assets/icons/svg/peoples.svg
diff --git a/src/assets/icons/perm.svg b/src/assets/icons/svg/perm.svg
similarity index 100%
rename from src/assets/icons/perm.svg
rename to src/assets/icons/svg/perm.svg
diff --git a/src/assets/icons/phone.svg b/src/assets/icons/svg/phone.svg
similarity index 100%
rename from src/assets/icons/phone.svg
rename to src/assets/icons/svg/phone.svg
diff --git a/src/assets/icons/post.svg b/src/assets/icons/svg/post.svg
similarity index 100%
rename from src/assets/icons/post.svg
rename to src/assets/icons/svg/post.svg
diff --git a/src/assets/icons/qq.svg b/src/assets/icons/svg/qq.svg
similarity index 100%
rename from src/assets/icons/qq.svg
rename to src/assets/icons/svg/qq.svg
diff --git a/src/assets/icons/question.svg b/src/assets/icons/svg/question.svg
similarity index 100%
rename from src/assets/icons/question.svg
rename to src/assets/icons/svg/question.svg
diff --git a/src/assets/icons/radio.svg b/src/assets/icons/svg/radio.svg
similarity index 100%
rename from src/assets/icons/radio.svg
rename to src/assets/icons/svg/radio.svg
diff --git a/src/assets/icons/rate.svg b/src/assets/icons/svg/rate.svg
similarity index 100%
rename from src/assets/icons/rate.svg
rename to src/assets/icons/svg/rate.svg
diff --git a/src/assets/icons/redis.svg b/src/assets/icons/svg/redis.svg
similarity index 100%
rename from src/assets/icons/redis.svg
rename to src/assets/icons/svg/redis.svg
diff --git a/src/assets/icons/route.svg b/src/assets/icons/svg/route.svg
similarity index 100%
rename from src/assets/icons/route.svg
rename to src/assets/icons/svg/route.svg
diff --git a/src/assets/icons/row.svg b/src/assets/icons/svg/row.svg
similarity index 100%
rename from src/assets/icons/row.svg
rename to src/assets/icons/svg/row.svg
diff --git a/src/assets/icons/search.svg b/src/assets/icons/svg/search.svg
similarity index 100%
rename from src/assets/icons/search.svg
rename to src/assets/icons/svg/search.svg
diff --git a/src/assets/icons/select.svg b/src/assets/icons/svg/select.svg
similarity index 100%
rename from src/assets/icons/select.svg
rename to src/assets/icons/svg/select.svg
diff --git a/src/assets/icons/server.svg b/src/assets/icons/svg/server.svg
similarity index 100%
rename from src/assets/icons/server.svg
rename to src/assets/icons/svg/server.svg
diff --git a/src/assets/icons/shopping.svg b/src/assets/icons/svg/shopping.svg
similarity index 100%
rename from src/assets/icons/shopping.svg
rename to src/assets/icons/svg/shopping.svg
diff --git a/src/assets/icons/size.svg b/src/assets/icons/svg/size.svg
similarity index 100%
rename from src/assets/icons/size.svg
rename to src/assets/icons/svg/size.svg
diff --git a/src/assets/icons/skill.svg b/src/assets/icons/svg/skill.svg
similarity index 100%
rename from src/assets/icons/skill.svg
rename to src/assets/icons/svg/skill.svg
diff --git a/src/assets/icons/slider.svg b/src/assets/icons/svg/slider.svg
similarity index 100%
rename from src/assets/icons/slider.svg
rename to src/assets/icons/svg/slider.svg
diff --git a/src/assets/icons/star.svg b/src/assets/icons/svg/star.svg
similarity index 100%
rename from src/assets/icons/star.svg
rename to src/assets/icons/svg/star.svg
diff --git a/src/assets/icons/swagger.svg b/src/assets/icons/svg/swagger.svg
similarity index 100%
rename from src/assets/icons/swagger.svg
rename to src/assets/icons/svg/swagger.svg
diff --git a/src/assets/icons/switch.svg b/src/assets/icons/svg/switch.svg
similarity index 100%
rename from src/assets/icons/switch.svg
rename to src/assets/icons/svg/switch.svg
diff --git a/src/assets/icons/system.svg b/src/assets/icons/svg/system.svg
similarity index 100%
rename from src/assets/icons/system.svg
rename to src/assets/icons/svg/system.svg
diff --git a/src/assets/icons/tab.svg b/src/assets/icons/svg/tab.svg
similarity index 100%
rename from src/assets/icons/tab.svg
rename to src/assets/icons/svg/tab.svg
diff --git a/src/assets/icons/table.svg b/src/assets/icons/svg/table.svg
similarity index 100%
rename from src/assets/icons/table.svg
rename to src/assets/icons/svg/table.svg
diff --git a/src/assets/icons/textarea.svg b/src/assets/icons/svg/textarea.svg
similarity index 100%
rename from src/assets/icons/textarea.svg
rename to src/assets/icons/svg/textarea.svg
diff --git a/src/assets/icons/theme.svg b/src/assets/icons/svg/theme.svg
similarity index 100%
rename from src/assets/icons/theme.svg
rename to src/assets/icons/svg/theme.svg
diff --git a/src/assets/icons/time-range.svg b/src/assets/icons/svg/time-range.svg
similarity index 100%
rename from src/assets/icons/time-range.svg
rename to src/assets/icons/svg/time-range.svg
diff --git a/src/assets/icons/time.svg b/src/assets/icons/svg/time.svg
similarity index 100%
rename from src/assets/icons/time.svg
rename to src/assets/icons/svg/time.svg
diff --git a/src/assets/icons/tool.svg b/src/assets/icons/svg/tool.svg
similarity index 100%
rename from src/assets/icons/tool.svg
rename to src/assets/icons/svg/tool.svg
diff --git a/src/assets/icons/tree-table.svg b/src/assets/icons/svg/tree-table.svg
similarity index 100%
rename from src/assets/icons/tree-table.svg
rename to src/assets/icons/svg/tree-table.svg
diff --git a/src/assets/icons/tree.svg b/src/assets/icons/svg/tree.svg
similarity index 100%
rename from src/assets/icons/tree.svg
rename to src/assets/icons/svg/tree.svg
diff --git a/src/assets/icons/upload.svg b/src/assets/icons/svg/upload.svg
similarity index 100%
rename from src/assets/icons/upload.svg
rename to src/assets/icons/svg/upload.svg
diff --git a/src/assets/icons/user.svg b/src/assets/icons/svg/user.svg
similarity index 100%
rename from src/assets/icons/user.svg
rename to src/assets/icons/svg/user.svg
diff --git a/src/assets/icons/validCode.svg b/src/assets/icons/svg/validCode.svg
similarity index 100%
rename from src/assets/icons/validCode.svg
rename to src/assets/icons/svg/validCode.svg
diff --git a/src/assets/icons/wechat.svg b/src/assets/icons/svg/wechat.svg
similarity index 100%
rename from src/assets/icons/wechat.svg
rename to src/assets/icons/svg/wechat.svg
diff --git a/src/assets/icons/zip.svg b/src/assets/icons/svg/zip.svg
similarity index 100%
rename from src/assets/icons/zip.svg
rename to src/assets/icons/svg/zip.svg
diff --git a/src/components/IconSelect/index.vue b/src/components/IconSelect/index.vue
new file mode 100644
index 00000000..f4618393
--- /dev/null
+++ b/src/components/IconSelect/index.vue
@@ -0,0 +1,83 @@
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/components/TreeSelect/index.vue b/src/components/TreeSelect/index.vue
index 5d0087be..14039840 100644
--- a/src/components/TreeSelect/index.vue
+++ b/src/components/TreeSelect/index.vue
@@ -1,195 +1,155 @@
-
-
+
-
-
-
+
+
+
+
+
-
-
+
\ No newline at end of file
diff --git a/src/views/system/menu/components/Menu.vue b/src/views/system/menu/components/Menu.vue
index 3e9d082e..a3b9a384 100644
--- a/src/views/system/menu/components/Menu.vue
+++ b/src/views/system/menu/components/Menu.vue
@@ -83,12 +83,10 @@
:rules="state.rules"
label-width="80px">
-
@@ -115,7 +113,30 @@
-
+
+
+
+
+
+
+
+
+
+
+
+
@@ -150,12 +171,15 @@ import {Search, Plus, Edit, Refresh, Delete} from '@element-plus/icons'
import {ElForm, ElMessage, ElMessageBox} from "element-plus";
import {defineEmits, reactive, ref, unref, onMounted, getCurrentInstance} from "vue";
-import Treeselect from 'vue3-treeselect'
-import 'vue3-treeselect/dist/vue3-treeselect.css'
import SvgIcon from '@/components/SvgIcon/index.vue';
-const emit = defineEmits(['menuClick'])
+import TreeSelect from '@/components/TreeSelect/index.vue';
+import IconSelect from '@/components/IconSelect/index.vue';
+
+const emit = defineEmits(['menuClick'])
+const showChooseIcon = ref(false);
+const iconSelectRef = ref(null);
const state = reactive({
loading: true,
// 选中ID数组
@@ -180,7 +204,7 @@ const state = reactive({
parentId: 0,
name: undefined,
visible: 1,
- icon: undefined,
+ icon: '',
sort: 1,
component: 'Layout',
path: undefined
@@ -220,7 +244,7 @@ function handleQuery() {
function loadTreeSelectMenuOptions() {
const menuOptions: any[] = []
listTreeSelectMenus().then(response => {
- const menuOption = {id: 0, label: '无', children: response.data}
+ const menuOption = {id: 0, label: '顶级菜单', children: response.data}
menuOptions.push(menuOption)
state.menuOptions = menuOptions
})
@@ -268,6 +292,7 @@ function handleUpdate(row: any) {
}
const dataForm = ref(ElForm)
+
function submitForm() {
const form = unref(dataForm)
form.validate((valid: any) => {
@@ -296,7 +321,7 @@ function resetForm() {
parentId: 0,
name: undefined,
visible: 1,
- icon: undefined,
+ icon: '',
sort: 1,
component: 'Layout',
path: undefined
@@ -323,6 +348,17 @@ function handleDelete(row: any) {
)
}
+function showSelectIcon() {
+ (iconSelectRef as any).value.reset();
+ showChooseIcon.value = true;
+}
+
+function selected(name: string) {
+ state.formData.icon = name;
+ showChooseIcon.value = false;
+}
+
+
onMounted(() => {
handleQuery()
})
diff --git a/vite.config.ts b/vite.config.ts
index ac8b645c..7f25b631 100644
--- a/vite.config.ts
+++ b/vite.config.ts
@@ -12,12 +12,11 @@ export default ({command, mode}: ConfigEnv): UserConfig => {
return (
{
-
plugins: [
vue(),
viteSvgIcons({
// 指定需要缓存的图标文件夹
- iconDirs: [path.resolve(process.cwd(), 'src/assets/icons')],
+ iconDirs: [path.resolve(process.cwd(), 'src/assets/icons/svg')],
// 指定symbolId格式
symbolId: 'icon-[dir]-[name]',
})