feat: add guest mode and optimize login experience
针对微信审核要求新增游客浏览模式,用户可无需登录直接浏览应用内容,仅在使用发布、点赞、记录等需要身份的功能时才弹窗引导登录。具体修改包括: 1. 新增游客态判断工具函数与登录守卫逻辑 2. 为登录页添加游客直接进入入口 3. 为首页、酒友圈、个人页、动态页、记录页添加游客适配逻辑 4. 优化登录态失效处理逻辑,不再强制跳转登录页 5. 调整部分页面的返回逻辑适配分享直接进入场景 6. 为各页面添加游客引导UI与交互
This commit is contained in:
+21
-1
@@ -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 {
|
||||
|
||||
Reference in New Issue
Block a user