From df55d36e0dfa6e86ee7ed8a4c908c8f63962c8e1 Mon Sep 17 00:00:00 2001
From: Tim <135014430+nagisa77@users.noreply.github.com>
Date: Sat, 5 Jul 2025 17:58:34 +0800
Subject: [PATCH] Add reusable dropdown components
---
.../src/components/CategorySelect.vue | 32 ++++
open-isle-cli/src/components/Dropdown.vue | 170 ++++++++++++++++++
open-isle-cli/src/components/TagSelect.vue | 32 ++++
open-isle-cli/src/views/NewPostPageView.vue | 42 +----
4 files changed, 240 insertions(+), 36 deletions(-)
create mode 100644 open-isle-cli/src/components/CategorySelect.vue
create mode 100644 open-isle-cli/src/components/Dropdown.vue
create mode 100644 open-isle-cli/src/components/TagSelect.vue
diff --git a/open-isle-cli/src/components/CategorySelect.vue b/open-isle-cli/src/components/CategorySelect.vue
new file mode 100644
index 000000000..b67ffcefc
--- /dev/null
+++ b/open-isle-cli/src/components/CategorySelect.vue
@@ -0,0 +1,32 @@
+
+
+
+
+
diff --git a/open-isle-cli/src/components/Dropdown.vue b/open-isle-cli/src/components/Dropdown.vue
new file mode 100644
index 000000000..ab87cd0b1
--- /dev/null
+++ b/open-isle-cli/src/components/Dropdown.vue
@@ -0,0 +1,170 @@
+
+
+
+
+ {{ selectedLabels.join(', ') }}
+ {{ placeholder }}
+
+
+ {{ selectedLabels[0] }}
+ {{ placeholder }}
+
+
+
+
+
+
+
+
+
+
+
diff --git a/open-isle-cli/src/components/TagSelect.vue b/open-isle-cli/src/components/TagSelect.vue
new file mode 100644
index 000000000..ea2403413
--- /dev/null
+++ b/open-isle-cli/src/components/TagSelect.vue
@@ -0,0 +1,32 @@
+
+
+
+
+
diff --git a/open-isle-cli/src/views/NewPostPageView.vue b/open-isle-cli/src/views/NewPostPageView.vue
index c0ed1c8d9..97979c4ff 100644
--- a/open-isle-cli/src/views/NewPostPageView.vue
+++ b/open-isle-cli/src/views/NewPostPageView.vue
@@ -6,15 +6,8 @@
-
-
-
-
+
+
发布
@@ -24,22 +17,15 @@
@@ -97,21 +83,5 @@ export default {
gap: 10px;
}
-.category-select {
- padding: 5px 10px;
- border-radius: 5px;
-}
-
-.tag-select {
- display: flex;
- flex-wrap: wrap;
- gap: 10px;
-}
-
-.tag-item {
- display: flex;
- align-items: center;
- gap: 4px;
-}