Merge branch 'feature-login'

This commit is contained in:
guozhigq
2024-06-10 01:10:13 +08:00
3 changed files with 17 additions and 22 deletions

View File

@ -31,7 +31,7 @@ class LoginPageController extends GetxController {
// 倒计时60s
RxInt seconds = 60.obs;
late Timer timer;
Timer? timer;
RxBool smsCodeSendStatus = false.obs;
// 默认密码登录
@ -43,7 +43,7 @@ class LoginPageController extends GetxController {
late int webSmsCode;
RxInt validSeconds = 180.obs;
late Timer validTimer;
Timer? validTimer;
late String qrcodeKey;
// 监听pageView切换
@ -329,7 +329,7 @@ class LoginPageController extends GetxController {
var res = await LoginHttp.queryWebQrcodeStatus(qrcodeKey);
if (res['status']) {
await LoginUtils.confirmLogin('', null);
validTimer.cancel();
validTimer?.cancel();
Get.back();
}
}

View File

@ -15,8 +15,10 @@ class _LoginPageState extends State<LoginPage> {
final LoginPageController _loginPageCtr = Get.put(LoginPageController());
@override
void initState() {
super.initState();
void dispose() {
_loginPageCtr.validTimer?.cancel();
_loginPageCtr.timer?.cancel();
super.dispose();
}
@override
@ -51,7 +53,7 @@ class _LoginPageState extends State<LoginPage> {
},
);
},
icon: const Icon(Icons.language),
icon: const Icon(Icons.language, size: 20),
),
IconButton(
tooltip: '二维码登录',
@ -90,7 +92,7 @@ class _LoginPageState extends State<LoginPage> {
Map data = snapshot.data as Map;
return QrImageView(
data: data['data']['url'],
backgroundColor: Colors.transparent,
backgroundColor: Colors.white,
);
} else {
return const Center(
@ -131,9 +133,11 @@ class _LoginPageState extends State<LoginPage> {
);
});
},
);
).then((value) {
_loginPageCtr.validTimer!.cancel();
});
},
icon: const Icon(Icons.qr_code),
icon: const Icon(Icons.qr_code, size: 20),
),
const SizedBox(width: 22),
],
@ -164,17 +168,9 @@ class _LoginPageState extends State<LoginPage> {
fontSize: 34,
fontWeight: FontWeight.w500),
),
Row(
children: [
Text(
'请使用您的 BiliBili 账号登录。',
style: Theme.of(context).textTheme.titleSmall!,
),
GestureDetector(
onTap: () {},
child: const Icon(Icons.info_outline, size: 16),
)
],
Text(
'请使用您的 BiliBili 账号登录。',
style: Theme.of(context).textTheme.titleSmall!,
),
Container(
margin: const EdgeInsets.only(top: 38, bottom: 15),

View File

@ -33,8 +33,7 @@ class MineController extends GetxController {
onLogin() async {
if (!userLogin.value) {
// RoutePush.loginPush();
Get.toNamed('/loginPage');
Get.toNamed('/loginPage', preventDuplicates: false);
} else {
int mid = userInfo.value.mid!;
String face = userInfo.value.face!;