app-starlock/star_lock/lib/login/register/starLock_register_state.dart
Daisy fb25ad51f5 1,新增国家及区号选择列表
2,密码/卡/指纹/遥控详情新增去设置其他选项的入口
3,新增找回密码接口调试及逻辑处理
2023-08-07 10:32:24 +08:00

52 lines
1.6 KiB
Dart

import 'package:flustars/flustars.dart';
import 'package:flutter/material.dart';
import 'package:get/get.dart';
import '../../translations/trans_lib.dart';
class StarLockRegisterState {
final TextEditingController phoneOrEmailController = TextEditingController();
final TextEditingController pwdController = TextEditingController();
final TextEditingController sureController = TextEditingController();
final TextEditingController codeController = TextEditingController();
var countryCode = '+86'.obs;
var countryId = '9'.obs;
var phoneOrEmailStr = ''.obs;
var phoneOrEmailStrIsOK = false.obs;
var pwd = ''.obs;
var surePwd = ''.obs;
var verificationCode = ''.obs;
var xWidth = ''.obs; // 滑动验证码滑动位置
var isIphoneType = true.obs;
var canSub = false.obs;
bool get isEmail => RegexUtil.isEmail(phoneOrEmailStr.value);
bool get isIphone => RegexUtil.isMobileSimple(phoneOrEmailStr.value);
bool get pwdIsOK => pwd.value.isNotEmpty && (pwd.value == surePwd.value);
bool get codeIsOK => verificationCode.value.isNotEmpty;
var canResend = false.obs;
var btnText = ''.obs;
var totalSeconds = 120;
var currentSecond = 120;
StarLockRegisterState() {
resetResend();
}
void resetResend() {
canResend.value = totalSeconds == currentSecond;
btnText.value = !canResend.value
? '$currentSecond s'
: btnText.value = TranslationLoader.lanKeys!.getVerificationCode!.tr;
}
void onClose() {
phoneOrEmailController.dispose();
pwdController.dispose();
sureController.dispose();
codeController.dispose();
}
}