From 17c16ec9c8722272ed4f5ebf1e9db80052a612f6 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?TOP=E7=B3=AF=E7=B1=B3?= <1130395124@qq.com>
Date: Sun, 12 Mar 2023 17:05:35 +0800
Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=E4=BD=93=E9=AA=8C?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/components/auth/login-box.vue | 14 +++++++++++++-
src/core/libs/utils.js | 2 +-
src/pages/auth/auth.vue | 16 +++++++++++++++-
src/pages/member/setting.vue | 8 ++++++--
4 files changed, 35 insertions(+), 5 deletions(-)
diff --git a/src/components/auth/login-box.vue b/src/components/auth/login-box.vue
index 12e26f5..015c89a 100644
--- a/src/components/auth/login-box.vue
+++ b/src/components/auth/login-box.vue
@@ -28,11 +28,23 @@ export default {
mounted() {},
destroyed() {},
methods: {
+ /**
+ * 关闭弹窗
+ * 如果在tabBar页面则relaunch,否则返回
+ */
closeModal() {
this.$store.commit("user/showLoginModal", false);
+ if (getCurrentPages().length <= 1) {
+ this.$utils.toPage("/pages/index/index", {}, "relaunch");
+ } else {
+ this.$utils.toPage("", {}, "back");
+ }
},
+ /**
+ * 登录页面
+ */
toLogin() {
- this.closeModal();
+ this.$store.commit("user/showLoginModal", false);
this.$utils.toPage("/pages/auth/auth");
},
},
diff --git a/src/core/libs/utils.js b/src/core/libs/utils.js
index 913b611..5d531e0 100644
--- a/src/core/libs/utils.js
+++ b/src/core/libs/utils.js
@@ -169,7 +169,7 @@ function toPage(url, options, type) {
currentPage.onShow(currentPage.options);
break;
case "back":
- uni.navigateBack({ delta: 1 });
+ uni.navigateBack({ ...{ delta: 1 }, ...options });
break;
case "relaunch":
uni.reLaunch(params);
diff --git a/src/pages/auth/auth.vue b/src/pages/auth/auth.vue
index 7c7d9c7..a83f6c3 100644
--- a/src/pages/auth/auth.vue
+++ b/src/pages/auth/auth.vue
@@ -185,7 +185,21 @@ export default {
})
.then((response) => {
this.$store.dispatch("user/info");
- this.$utils.toPage("", {}, "back");
+ this.$utils.toPage(
+ "",
+ {
+ complete() {
+ let pages = getCurrentPages();
+ let refer = pages[pages.length - 2];
+ if (typeof refer !== "undefined") {
+ if (typeof refer.initPage !== "undefined") {
+ refer.initPage(refer.options);
+ }
+ }
+ },
+ },
+ "back"
+ );
})
.catch((e) => {
this.$utils.toast(e);
diff --git a/src/pages/member/setting.vue b/src/pages/member/setting.vue
index 4d89cd2..d9cfa95 100644
--- a/src/pages/member/setting.vue
+++ b/src/pages/member/setting.vue
@@ -8,7 +8,7 @@
v1.02
-
+
密码管理
@@ -68,7 +68,11 @@ export default {
onReady() {},
onReachBottom() {},
onPullDownRefresh() {},
- methods: {},
+ methods: {
+ toPage(url) {
+ this.$utils.toPage(url);
+ },
+ },
};