解决登录显示、首页显示bug

This commit is contained in:
2026-05-19 11:06:46 +08:00
parent 2f7e097e6c
commit 00a859c551
181 changed files with 55329 additions and 998 deletions

View File

@@ -66,6 +66,7 @@
<script lang="uts">
import supa from '@/components/supadb/aksupainstance.uts'
import { requireMerchantAuth } from '@/utils/merchantAuth.uts'
import { USE_MOCK, MOCK_MERCHANT_ID, getMockReviews } from '@/pages/mall/merchant/mock/merchant-mock-data.uts'
type ReviewType = {
@@ -106,19 +107,35 @@
this.loadReviews()
return
}
// 同步设置 merchantId不用 async 包裹,避免 generator 内 this 绑定异常
try {
const session = supa.getSession()
this.merchantId = session?.user?.getString('id') || uni.getStorageSync('user_id') || ''
} catch (e) {}
this.loadReviews()
this.ensureMerchantAuth().then((passed: boolean) => {
if (passed) {
this.loadReviews()
}
})
},
onShow() {
this.loadReviews()
this.handlePageShow()
},
methods: {
async ensureMerchantAuth(): Promise<boolean> {
if (USE_MOCK) return true
const result = await requireMerchantAuth({ redirectOnFail: true, toastOnFail: true })
if (!result.ok) {
this.merchantId = ''
return false
}
this.merchantId = result.userInfo != null && result.userInfo.id != null ? result.userInfo.id : ''
return this.merchantId !== ''
},
async handlePageShow() {
const passed = await this.ensureMerchantAuth()
if (!passed) return
this.loadReviews()
},
async loadReviews() {
if (!this.merchantId || this.merchantId.split('-').length !== 5) return
if (this.loading) return