<!-- 微信公众号的登录回调页 --> <template> <!-- 空登陆页 --> <view /> <view>登录</view> </template> <script setup> import sheep from '@/sheep'; import { onLoad } from '@dcloudio/uni-app'; import { closeAuthModal, showAuthModal } from '@/sheep/hooks/useModal'; onLoad(async (options) => { // #ifdef H5 // 将 search 参数赋值到 options 中,方便下面解析 new URLSearchParams(location.search).forEach((value, key) => { options[key] = value; }); const event = options.event; const code = options.code; const state = options.state; if (event === 'login') { // 场景一:登录 const res = await sheep.$platform.useProvider().login(code, state); console.log("login.vue res:",res) if(!res){ console.log("返回第一次登录了",res) setTimeout(showAuthModal("officialAccountFirstLogin"),100) return false; } } else if (event === 'bind') { // 场景二:绑定 sheep.$platform.useProvider().bind(code, state); } // 检测 H5 登录回调 let returnUrl = uni.getStorageSync('returnUrl'); if (returnUrl) { uni.removeStorage('returnUrl'); location.replace(returnUrl); } else { uni.switchTab({ url: '/', }); } // #endif }); </script>