From 25a8991991c6393f3095a7ca81eef62df2b300b3 Mon Sep 17 00:00:00 2001
From: feige996 <1020102647@qq.com>
Date: Tue, 19 Aug 2025 16:33:24 +0800
Subject: [PATCH] =?UTF-8?q?refactor(login):=20=E9=87=8D=E6=9E=84=E7=99=BB?=
=?UTF-8?q?=E5=BD=95=E6=B3=A8=E5=86=8C=E9=A1=B5=E9=9D=A2=E5=92=8C=E9=85=8D?=
=?UTF-8?q?=E7=BD=AE?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
- 合并平台特定登录页面到统一登录页面
- 重命名登录策略配置变量以更清晰表达意图
- 更新README文档说明登录策略变更
- 实现注册成功后的跳转逻辑
- 更新tabbar配置使用自定义样式
---
src/login/README.md | 8 ++---
src/login/config.ts | 10 +++---
src/pages.json | 14 ++++----
src/pages/login/README.md | 11 ++++++
src/pages/login/login.h5.vue | 57 --------------------------------
src/pages/login/login.vue | 45 ++++++++++++++++++++-----
src/pages/login/login.weixin.vue | 26 ---------------
src/pages/login/register.vue | 18 +++++++++-
src/router/interceptor.ts | 4 +--
9 files changed, 83 insertions(+), 110 deletions(-)
create mode 100644 src/pages/login/README.md
delete mode 100644 src/pages/login/login.h5.vue
delete mode 100644 src/pages/login/login.weixin.vue
diff --git a/src/login/README.md b/src/login/README.md
index fe4c810..43dc4fb 100644
--- a/src/login/README.md
+++ b/src/login/README.md
@@ -15,9 +15,9 @@
比如大部分2B和后台管理类的应用,比如企业微信、钉钉、飞书、内部报表系统、CMS系统等,都需要登录,只有登录后,才能使用。
-### EXCLUDE_PATH_LIST
-`EXCLUDE_PATH_LIST` 表示排除的路由列表。
+### EXCLUDE_PAGE_LIST
+`EXCLUDE_PAGE_LIST` 表示排除的路由列表。
-在 `默认无需登录策略: DEFAULT_NO_NEED_LOGIN` 中,只有路由在 `EXCLUDE_PATH_LIST` 中,才需要登录,相当于黑名单。
+在 `默认无需登录策略: DEFAULT_NO_NEED_LOGIN` 中,只有路由在 `EXCLUDE_PAGE_LIST` 中,才需要登录,相当于黑名单。
-在 `默认需要登录策略: DEFAULT_NEED_LOGIN` 中,只有路由在 `EXCLUDE_PATH_LIST` 中,才不需要登录,相当于白名单。
+在 `默认需要登录策略: DEFAULT_NEED_LOGIN` 中,只有路由在 `EXCLUDE_PAGE_LIST` 中,才不需要登录,相当于白名单。
diff --git a/src/login/config.ts b/src/login/config.ts
index c8694cc..ba724ac 100644
--- a/src/login/config.ts
+++ b/src/login/config.ts
@@ -1,13 +1,13 @@
export const LOGIN_STRATEGY_MAP = {
- BLACKLIST: 'BLACKLIST', // 黑名单策略,默认可以进入APP
- WHITELIST: 'WHITELIST', // 白名单策略,默认不可以进入APP,需要强制登录
+ DEFAULT_NO_NEED_LOGIN: 0, // 黑名单策略,默认可以进入APP
+ DEFAULT_NEED_LOGIN: 1, // 白名单策略,默认不可以进入APP,需要强制登录
}
-// 登录策略,默认使用黑名单策略,即默认不需要登录就可以访问
-export const LOGIN_STRATEGY = LOGIN_STRATEGY_MAP.WHITELIST
+// 登录策略,默认使用`无需登录策略`,即默认不需要登录就可以访问
+export const LOGIN_STRATEGY = LOGIN_STRATEGY_MAP.DEFAULT_NO_NEED_LOGIN
export const LOGIN_PAGE_LIST = ['/pages/login/login', '/pages/login/register']
// 排除在外的列表,白名单策略指白名单列表,黑名单策略指黑名单列表
-export const EXCLUDE_LIST = [
+export const EXCLUDE_PAGE_LIST = [
'/pages/xxx/index',
]
diff --git a/src/pages.json b/src/pages.json
index c2254af..ede1e65 100644
--- a/src/pages.json
+++ b/src/pages.json
@@ -15,7 +15,7 @@
}
},
"tabBar": {
- "custom": false,
+ "custom": true,
"color": "#999999",
"selectedColor": "#018d71",
"backgroundColor": "#F8F8F8",
@@ -26,16 +26,16 @@
"spacing": "3px",
"list": [
{
- "iconPath": "static/tabbar/home.png",
- "selectedIconPath": "static/tabbar/homeHL.png",
+ "text": "首页",
"pagePath": "pages/index/index",
- "text": "首页"
+ "iconType": "uniUi",
+ "icon": "home"
},
{
- "iconPath": "static/tabbar/example.png",
- "selectedIconPath": "static/tabbar/exampleHL.png",
+ "text": "关于",
"pagePath": "pages/about/about",
- "text": "关于"
+ "iconType": "unocss",
+ "icon": "i-carbon-code"
}
]
},
diff --git a/src/pages/login/README.md b/src/pages/login/README.md
new file mode 100644
index 0000000..09bbc21
--- /dev/null
+++ b/src/pages/login/README.md
@@ -0,0 +1,11 @@
+# 登录注册
+
+登录页 `login.vue` 对应路由是 `/pages/login/login`.
+注册页 `register.vue` 对应路由是 `/pages/login/register`.
+
+## 适用性
+
+登录注册页主要适用于 `h5` 和 `App`,因为小程序通常会使用平台提供的快捷登录。
+
+但是当业务要求需要服用夸平台的登录注册页时,也是可以用的。主要还是取决于业务形式。
+
diff --git a/src/pages/login/login.h5.vue b/src/pages/login/login.h5.vue
deleted file mode 100644
index 83d5c1d..0000000
--- a/src/pages/login/login.h5.vue
+++ /dev/null
@@ -1,57 +0,0 @@
-
-{
- "layout": "default",
- "style": {
- "navigationBarTitleText": "登录"
- }
-}
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/pages/login/login.vue b/src/pages/login/login.vue
index 2b7cbf7..bf16e7e 100644
--- a/src/pages/login/login.vue
+++ b/src/pages/login/login.vue
@@ -8,17 +8,46 @@
-
-
-
-
-
-
+
+
+ 登录页
+
+
+
diff --git a/src/pages/login/register.vue b/src/pages/login/register.vue
index f0d5db9..b28cfab 100644
--- a/src/pages/login/register.vue
+++ b/src/pages/login/register.vue
@@ -8,10 +8,26 @@
- 注册
+
+
+ 注册页
+
+
+