forgotpwd_controller.dart 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. import 'package:flutter/material.dart';
  2. import 'package:get/get.dart';
  3. class ForgotpwdController extends GetxController {
  4. final usernameController = TextEditingController();
  5. final passwordController = TextEditingController();
  6. final usernameFocusNode = FocusNode();
  7. final passwordFocusNode = FocusNode();
  8. final _isLogin = false.obs;
  9. bool get isLogin => _isLogin.value;
  10. set isLogin(bool value) {
  11. _isLogin.value = value;
  12. }
  13. @override
  14. void onInit() {
  15. super.onInit();
  16. }
  17. @override
  18. void onClose() {
  19. usernameController.dispose();
  20. passwordController.dispose();
  21. usernameFocusNode.dispose();
  22. passwordFocusNode.dispose();
  23. super.onClose();
  24. }
  25. void checkLogin() {
  26. final username = usernameController.text;
  27. final password = passwordController.text;
  28. if (validatorInputValue(username) &&
  29. validatorInputValue(password) &&
  30. username == password) {
  31. isLogin = true;
  32. } else {
  33. isLogin = false;
  34. }
  35. }
  36. //6-20 characters (letters or numbers)
  37. bool validatorInputValue(String value) {
  38. // 只允许字母和数字并且是6-20位
  39. return value.length >= 6 &&
  40. value.length <= 20 &&
  41. RegExp(r'^[a-zA-Z0-9]+$').hasMatch(value);
  42. }
  43. bool validatorConfirmInputValue(String value) {
  44. // 只允许字母和数字并且是6-20位
  45. return value == usernameController.text;
  46. }
  47. }