1 line
6.4 KiB
Plaintext
1 line
6.4 KiB
Plaintext
{"version":3,"sources":["pages/user/boot.uvue"],"sourcesContent":["<template>\r\n\t<view class=\"page\">\r\n\t\t<view class=\"splash\">\r\n\t\t\t<view class=\"brand\">\r\n\t\t\t\t<view class=\"brand-mark\"></view>\r\n\t\t\t\t<view class=\"brand-text\">\r\n\t\t\t\t\t<text class=\"brand-name\">Mall</text>\r\n\t\t\t\t\t<text class=\"brand-slogan\">正品保障 · 省心售后</text>\r\n\t\t\t\t</view>\r\n\t\t\t</view>\r\n\r\n\t\t\t<view class=\"status\">\r\n\t\t\t\t<view class=\"spinner\"></view>\r\n\t\t\t\t<text class=\"status-text\">正在检查登录状态…</text>\r\n\t\t\t\t<text class=\"status-sub\">通常数秒内自动进入首页或登录页</text>\r\n\t\t\t</view>\r\n\r\n\t\t\t<view class=\"actions\">\r\n\t\t\t\t<navigator url=\"/pages/user/login\" open-type=\"reLaunch\" class=\"action primary\">前往登录</navigator>\r\n\t\t\t\t<navigator url=\"/pages/user/register\" open-type=\"navigate\" class=\"action ghost\">我要注册</navigator>\r\n\t\t\t</view>\r\n\t\t</view>\r\n\t</view>\r\n</template>\r\n\r\n<script lang=\"uts\">\r\n\timport supa from '@/components/supadb/aksupainstance.uts'\r\n\timport { IS_TEST_MODE } from '@/ak/config.uts'\r\n\r\n\texport default {\r\n\t\tonLoad() {\r\n\t\t\t// 启动页:根据登录态重定向\r\n\t\t\tthis.checkAndRedirect();\r\n\t\t},\r\n\t\tonShow() {\r\n\t\t\t// 启动页仅在首次进入时做一次跳转,避免影响 H5 手动输入 URL\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tcheckAndRedirect() {\r\n\t\t\t\tconsole.log('boot: start redirect check')\r\n\r\n\t\t\t\tif (IS_TEST_MODE) {\r\n\t\t\t\t\t// 测试阶段:不做强制重定向,保留你手动输入的 URL / 目标页面\r\n\t\t\t\t\treturn\r\n\t\t\t\t}\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst sessionInfo = supa.getSession()\r\n\t\t\t\t\tif (sessionInfo != null && sessionInfo.user != null) {\r\n\t\t\t\t\t\tuni.reLaunch({ url: '/pages/mall/consumer/index' })\r\n\t\t\t\t\t\treturn\r\n\t\t\t\t\t}\r\n\t\t\t\t} catch (e) {\r\n\t\t\t\t\tconsole.error('boot: error checking session', e)\r\n\t\t\t\t}\r\n\r\n\t\t\t\tuni.reLaunch({ url: '/pages/user/login' })\r\n\t\t\t}\r\n\t\t}\r\n\t};\r\n</script>\r\n\r\n<style>\r\n\t.page {\r\n\t\t/* min-height: 100vh; UVUE不支持vh */\r\n flex: 1;\r\n\t\tbackground-color: #f5f7fa; /* UVUE不支持渐变 */\r\n\t\tdisplay: flex;\r\n\t\talign-items: center;\r\n\t\tjustify-content: center;\r\n\t\tpadding: 48rpx 32rpx;\r\n\t}\r\n\r\n\t.splash {\r\n\t\twidth: 100%;\r\n\t\tmax-width: 640rpx;\r\n\t\tbackground-color: #ffffff;\r\n\t\tborder-radius: 24rpx;\r\n\t\tbox-shadow: 0 12rpx 48rpx rgba(0, 0, 0, 0.08); /* 可能也不支持box-shadow, 视版本而定 */\r\n\t\tpadding: 48rpx 40rpx;\r\n\t\tdisplay: flex;\r\n flex-direction: column; /* 添加 flex-direction: column 以兼容 gap polyfill */\r\n\r\n\t\tflex-direction: column;\r\n\t\t/* gap: 32rpx; UVUE 不支持 gap */\r\n justify-content: space-between;\r\n\t}\r\n\r\n\t.brand {\r\n\t\tdisplay: flex;\r\n flex-direction: row;\r\n\t\talign-items: center;\r\n\t\t/* gap: 20rpx; */\r\n\t}\r\n\r\n\t.brand-mark {\r\n\t\twidth: 80rpx;\r\n\t\theight: 80rpx;\r\n\t\tborder-radius: 24rpx;\r\n\t\tbackground-color: #ff6b6b; /* UVUE不支持CSS线性渐变 */\r\n margin-right: 20rpx; /* 替代 gap */\r\n\t}\r\n\r\n\t.brand-text {\r\n\t\tdisplay: flex;\r\n\t\tflex-direction: column;\r\n\t\t/* gap: 8rpx; */\r\n\t}\r\n /* 替代 gap: 8rpx */\r\n .brand-name {\r\n margin-bottom: 8rpx;\r\n }\r\n\r\n\t.brand-name {\r\n\t\tfont-size: 36rpx;\r\n\t\tfont-weight: 700;\r\n\t\tcolor: #111827;\r\n\t}\r\n\r\n\t.brand-slogan {\r\n\t\tfont-size: 26rpx;\r\n\t\tcolor: #6b7280;\r\n\t}\r\n\r\n\t.status {\r\n\t\tdisplay: flex;\r\n\t\tflex-direction: column;\r\n\t\talign-items: center;\r\n\t\t/* gap: 12rpx; */\r\n\t\ttext-align: center;\r\n margin-top: 32rpx; /* 替代父级 gap */\r\n margin-bottom: 32rpx;\r\n\t}\r\n /* 替代 gap: 12rpx */\r\n .status-text {\r\n margin-top: 12rpx;\r\n }\r\n\r\n\t.spinner {\r\n\t\twidth: 88rpx;\r\n\t\theight: 88rpx;\r\n\t\tborder-radius: 44rpx; /* 如果不支持 50%,可以用 44rpx */\r\n\t\tborder-width: 8rpx;\r\n border-style: solid;\r\n border-color: #f3f4f6;\r\n\t\tborder-top-color: #ff6b6b;\r\n\t\t/* animation: spin 1s linear infinite; UVUE CSS动画需要特定写法或 transform */\r\n /* transform: rotate(360deg); */\r\n /* transition-duration: 1000ms; */\r\n \r\n /* 简单的无限旋转在原生 CSS 中可能需要写关键帧但 App-UVUE 支持有限,\r\n 这里暂时保留样式但不指望它自动动起来,或者应该用 loading 组件 */\r\n\t}\r\n\r\n\t.status-text {\r\n\t\tfont-size: 30rpx;\r\n\t\tcolor: #111827;\r\n\t\tfont-weight: 700; /* 600不支持 -> 700 */\r\n\t}\r\n\r\n\t.status-sub {\r\n\t\tfont-size: 24rpx;\r\n\t\tcolor: #6b7280;\r\n\t}\r\n\r\n\t.actions {\r\n\t\tdisplay: flex;\r\n\t\tflex-direction: column;\r\n\t\t/* gap: 16rpx; */\r\n\t}\r\n /* 替代 gap */\r\n .action {\r\n margin-bottom: 16rpx;\r\n }\r\n\r\n\t.action {\r\n\t\twidth: 100%;\r\n\t\ttext-align: center;\r\n\t\tpadding: 24rpx;\r\n\t\tborder-radius: 16rpx;\r\n\t\tfont-size: 28rpx;\r\n\t\tfont-weight: 700;\r\n\t}\r\n\r\n\t.action.primary {\r\n\t\tbackground: linear-gradient(135deg, #ff6b6b, #ff9f43);\r\n\t\tcolor: #ffffff;\r\n\t}\r\n\r\n\t.action.ghost {\r\n\t\tborder: 2rpx solid #e5e7eb;\r\n\t\tcolor: #374151;\r\n\t\tbackground: #ffffff;\r\n\t}\r\n\r\n/*\r\n\t@keyframes spin {\r\n\t\tfrom {\r\n\t\t\ttransform: rotate(0deg);\r\n\t\t}\r\n\t\tto {\r\n\t\t\ttransform: rotate(360deg);\r\n\t\t}\r\n\t}\r\n*/\r\n</style>\r\n"],"names":[],"mappings":";;;;;;;;;;;;;;+BAiDU,YAAA;AApBJ;;eACJ,sBAAM;YAEL,IAAI,CAAC,gBAAgB;QACtB;;mBACA,MAAM,CAEN;;;;;;eAnCD,IAqBO,QAAA,IArBD,WAAM,SAAM;YACjB,IAmBO,QAAA,IAnBD,WAAM,WAAQ;gBACnB,IAMO,QAAA,IAND,WAAM,UAAO;oBAClB,IAAgC,QAAA,IAA1B,WAAM;oBACZ,IAGO,QAAA,IAHD,WAAM,eAAY;wBACvB,IAAoC,QAAA,IAA9B,WAAM,eAAa;wBACzB,IAA6C,QAAA,IAAvC,WAAM,iBAAe;;;gBAI7B,IAIO,QAAA,IAJD,WAAM,WAAQ;oBACnB,IAA6B,QAAA,IAAvB,WAAM;oBACZ,IAA0C,QAAA,IAApC,WAAM,gBAAc;oBAC1B,IAA+C,QAAA,IAAzC,WAAM,eAAa;;gBAG1B,IAGO,QAAA,IAHD,WAAM,YAAS;oBACpB,IAA+F,sBAAA,IAApF,SAAI,qBAAoB,eAAU,YAAW,WAAM,gDAAiB,gBAAI,GAAA;+BAAA;4BAAJ;yBAAI;;;oBACnF,IAAgG,sBAAA,IAArF,SAAI,wBAAuB,eAAU,YAAW,WAAM,8CAAe,gBAAI,GAAA;+BAAA;4BAAJ;yBAAI;;;;;;;aAmBrF;aAAA,0BAAgB;QACf,QAAQ,GAAG,CAAC,8BAA4B;QAExC,kBAAkB;YAEjB;;QAGD,IAAI;YACH,IAAM,cAAc,aAAK,UAAU;YACnC,IAAI,YAAU,EAAA,CAAK,IAAG,CAAA,EAAA,CAAK,YAAY,IAAG,CAAA,EAAA,CAAK,IAAI,EAAE;gBAChD,6BAAW,MAAK;gBACpB;;;SAEA,OAAO,cAAG;YACX,QAAQ,KAAK,CAAC,gCAAgC,GAAC;;QAJ1C,6BAOS,MAAK;IACrB;;;;;;;;;;;;;;;;;;;;AAED"} |