diff --git a/src/components/base/modal/Modal.story.vue b/src/components/base/modal/Modal.story.vue
new file mode 100644
index 000000000..db8ddadfa
--- /dev/null
+++ b/src/components/base/modal/Modal.story.vue
@@ -0,0 +1,21 @@
+
+
+
+
+ 打开
+
+ Hello World
+ 关闭
+
+
+
+
diff --git a/src/components/base/modal/Modal.vue b/src/components/base/modal/Modal.vue
new file mode 100644
index 000000000..a57af1579
--- /dev/null
+++ b/src/components/base/modal/Modal.vue
@@ -0,0 +1,161 @@
+
+
+
+
+
+
+
+
diff --git a/src/components/base/modal/__tests__/Modal.spec.ts b/src/components/base/modal/__tests__/Modal.spec.ts
new file mode 100644
index 000000000..aed08c496
--- /dev/null
+++ b/src/components/base/modal/__tests__/Modal.spec.ts
@@ -0,0 +1,8 @@
+import { describe, expect, it } from "vitest";
+import { VModal } from "../index";
+
+describe("Modal", () => {
+ it("should render", () => {
+ expect(VModal).toBeDefined();
+ });
+});
diff --git a/src/components/base/modal/index.ts b/src/components/base/modal/index.ts
new file mode 100644
index 000000000..6d4aa1b15
--- /dev/null
+++ b/src/components/base/modal/index.ts
@@ -0,0 +1 @@
+export { default as VModal } from "./Modal.vue";
diff --git a/src/core/icons.ts b/src/core/icons.ts
index 4fa29ef0e..405fb0543 100644
--- a/src/core/icons.ts
+++ b/src/core/icons.ts
@@ -26,6 +26,9 @@ import IconEye from "~icons/ri/eye-line";
import IconFolder from "~icons/ri/folder-2-line";
// @ts-ignore
import IconMore from "~icons/ri/more-line";
+// @ts-ignore
+import IconClose from "~icons/ri/close-line";
+
export {
IconDashboard,
IconArrowRight,
@@ -41,4 +44,5 @@ export {
IconEye,
IconFolder,
IconMore,
+ IconClose,
};
diff --git a/src/views/HomeView.vue b/src/views/HomeView.vue
index d444c7581..e4ca6fb8e 100644
--- a/src/views/HomeView.vue
+++ b/src/views/HomeView.vue
@@ -1,6 +1,22 @@
-
+
+
+
+
+ 打开
+