feat: add guest mode and optimize login experience

针对微信审核要求新增游客浏览模式,用户可无需登录直接浏览应用内容,仅在使用发布、点赞、记录等需要身份的功能时才弹窗引导登录。具体修改包括:
1. 新增游客态判断工具函数与登录守卫逻辑
2. 为登录页添加游客直接进入入口
3. 为首页、酒友圈、个人页、动态页、记录页添加游客适配逻辑
4. 优化登录态失效处理逻辑,不再强制跳转登录页
5. 调整部分页面的返回逻辑适配分享直接进入场景
6. 为各页面添加游客引导UI与交互
This commit is contained in:
cg
2026-09-10 21:43:46 +08:00
parent 26b7111af0
commit dd3c670021
9 changed files with 307 additions and 46 deletions
+21 -1
View File
@@ -346,7 +346,7 @@ import {
FEELINGS, VISIBILITY_OPTIONS
} from '../../common/constants'
import { calcStandardCups, unitToMl, formatDate, getCatIcon, isIconPath } from '../../common/utils'
import client from '../../common/api'
import client, { isLoggedIn } from '../../common/api'
import themeMixin from '../../common/theme-mixin'
export default {
@@ -445,6 +445,26 @@ export default {
if (options && options.date) {
this.backfillDate = options.date
}
// 登录守卫:记录功能需要登录(首页入口已拦截,此处兜底处理直接进入的场景)
if (!isLoggedIn()) {
uni.showModal({
title: '登录提示',
content: '记录饮酒需要登录后使用,是否立即登录?',
confirmText: '去登录',
cancelText: '再看看',
success: (res) => {
if (res.confirm) {
uni.navigateTo({ url: '/pages/login/login' })
} else {
uni.navigateBack({
fail: () => {
uni.switchTab({ url: '/pages/index/index' })
}
})
}
}
})
}
},
onShareAppMessage() {
return {