diff --git a/package.json b/package.json
index 1787932..f7339d5 100644
--- a/package.json
+++ b/package.json
@@ -30,7 +30,6 @@
],
"dependencies": {
"@ctrl/tinycolor": "^3.4.1",
- "@pureadmin/components": "^1.1.0",
"@pureadmin/descriptions": "^1.1.0",
"@pureadmin/table": "^1.8.0",
"@pureadmin/utils": "^1.6.7",
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index 11ab3bd..38f892f 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -7,7 +7,6 @@ specifiers:
"@iconify-icons/ep": ^1.2.7
"@iconify-icons/ri": ^1.2.3
"@iconify/vue": ^4.0.0
- "@pureadmin/components": ^1.1.0
"@pureadmin/descriptions": ^1.1.0
"@pureadmin/table": ^1.8.0
"@pureadmin/theme": ^2.4.0
@@ -94,7 +93,6 @@ specifiers:
dependencies:
"@ctrl/tinycolor": 3.4.1
- "@pureadmin/components": 1.1.0_vue@3.2.45
"@pureadmin/descriptions": 1.1.1_element-plus@2.2.25
"@pureadmin/table": 1.8.0_element-plus@2.2.25
"@pureadmin/utils": 1.6.7_aotapuqn7htzdjltsyimavekky
@@ -198,35 +196,6 @@ packages:
"@jridgewell/trace-mapping": 0.3.17
dev: true
- /@ant-design/colors/6.0.0:
- resolution:
- {
- integrity: sha512-qAZRvPzfdWHtfameEGP2Qvuf838NhergR35o+EuVyB5XvSA98xod5r4utvi4TJ3ywmevm290g9nsCG5MryrdWQ==
- }
- dependencies:
- "@ctrl/tinycolor": 3.4.1
- dev: false
-
- /@ant-design/icons-svg/4.2.1:
- resolution:
- {
- integrity: sha512-EB0iwlKDGpG93hW8f85CTJTs4SvMX7tt5ceupvhALp1IF44SeUFOMhKUOYqpsoYWQKAOuTRDMqn75rEaKDp0Xw==
- }
- dev: false
-
- /@ant-design/icons-vue/6.1.0_vue@3.2.45:
- resolution:
- {
- integrity: sha512-EX6bYm56V+ZrKN7+3MT/ubDkvJ5rK/O2t380WFRflDcVFgsvl3NLH7Wxeau6R8DbrO5jWR6DSTC3B6gYFp77AA==
- }
- peerDependencies:
- vue: ">=3.0.3"
- dependencies:
- "@ant-design/colors": 6.0.0
- "@ant-design/icons-svg": 4.2.1
- vue: 3.2.45
- dev: false
-
/@antfu/utils/0.6.3:
resolution:
{
@@ -1074,19 +1043,6 @@ packages:
fastq: 1.13.0
dev: true
- /@pureadmin/components/1.1.0_vue@3.2.45:
- resolution:
- {
- integrity: sha512-Y7FCUVQVkZ2P3K/3vLrfQOfpjbf8g0TDPUWuFUlaq6aIW3BRduiVfqn4k/r3TX6LtasxGvgnJ/TO9tGed5VlTg==
- }
- peerDependencies:
- vue: ^3.2.0
- dependencies:
- "@ant-design/icons-svg": 4.2.1
- "@ant-design/icons-vue": 6.1.0_vue@3.2.45
- vue: 3.2.45
- dev: false
-
/@pureadmin/descriptions/1.1.1_element-plus@2.2.25:
resolution:
{
diff --git a/src/layout/components/notice/index.vue b/src/layout/components/notice/index.vue
index 1c283e8..976b39e 100644
--- a/src/layout/components/notice/index.vue
+++ b/src/layout/components/notice/index.vue
@@ -2,25 +2,16 @@
import { ref } from "vue";
import { noticesData } from "./data";
import NoticeList from "./noticeList.vue";
-import { Tabs, TabPane } from "@pureadmin/components";
-
-const dropdownDom = ref();
-const activeKey = ref(noticesData[0].key);
-
-const notices = ref(noticesData);
const noticesNum = ref(0);
-notices.value.forEach(notice => {
- noticesNum.value += notice.list.length;
-});
+const notices = ref(noticesData);
+const activeKey = ref(noticesData[0].key);
-function tabClick() {
- (dropdownDom as any).value.handleOpen();
-}
+notices.value.map(v => (noticesNum.value += v.list.length));
-
+
-
+
-
+
-
+
-
+
-
-
diff --git a/src/main.ts b/src/main.ts
index 3ea7939..d167d5a 100644
--- a/src/main.ts
+++ b/src/main.ts
@@ -18,9 +18,7 @@ import "./style/reset.scss";
// 导入公共样式
import "./style/index.scss";
import "element-plus/dist/index.css";
-import "@pureadmin/components/dist/index.css";
-import "@pureadmin/components/dist/theme.css";
-import "@pureadmin/components/dist/dark.scss";
+
// 导入字体图标
import "./assets/iconfont/iconfont.js";
import "./assets/iconfont/iconfont.css";
diff --git a/src/style/dark.scss b/src/style/dark.scss
index e3fb371..f511ad3 100644
--- a/src/style/dark.scss
+++ b/src/style/dark.scss
@@ -26,11 +26,6 @@ html.dark {
filter: invert(0.9) hue-rotate(180deg);
}
- .ant-tabs {
- background: var(--el-bg-color);
- color: $color-white;
- }
-
/* 标签页 */
.tags-view {
.arrow-left,
diff --git a/src/utils/message.ts b/src/utils/message.ts
new file mode 100644
index 0000000..86b631c
--- /dev/null
+++ b/src/utils/message.ts
@@ -0,0 +1,33 @@
+import { type MessageHandler, ElMessage } from "element-plus";
+
+// 更多配置请看:https://element-plus.org/zh-CN/component/message.html#message-%E9%85%8D%E7%BD%AE%E9%A1%B9
+
+type messageTypes = "success" | "info" | "warning" | "error";
+
+/**
+ * `element-plus` 的 `info` 消息类型
+ */
+const message = (
+ message: string,
+ type = "info" as messageTypes,
+ showClose = true,
+ duration = 2000,
+ center = false,
+ grouping = false
+): MessageHandler => {
+ return ElMessage({
+ message,
+ type,
+ showClose,
+ duration,
+ center,
+ grouping
+ });
+};
+
+/**
+ * 关闭 `element-plus` 的所有消息实例
+ */
+const closeAllMessage = (): void => ElMessage.closeAll();
+
+export { message, closeAllMessage };
diff --git a/src/views/login/index.vue b/src/views/login/index.vue
index 87d1d0a..f5adbca 100644
--- a/src/views/login/index.vue
+++ b/src/views/login/index.vue
@@ -1,10 +1,10 @@