Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit d7b151d

Browse files
committed
登录模块页面优化
1 parent 2f86e7a commit d7b151d

File tree

9 files changed

+61
-99
lines changed

9 files changed

+61
-99
lines changed

README.md

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
<img src="preview/logo.jpg"/>
44

5-
本项目为Flutter的学习练习项目(现阶段主要为UI练习)。
5+
本项目为学习Flutter的练习项目(要为UI练习)。
66

77
通过设置、修改、组合自带部件以及自定义来实现具体的设计效果,满足日常开发的需求。
88

@@ -131,6 +131,8 @@ iOS需要自行下载代码运行。(效果是一致的)
131131

132132
- [Flutter开发中的一些Tips(二)](https://weilu.blog.csdn.net/article/details/94849020)
133133

134+
- [Flutter 动画曲线Curves 效果一览](https://weilu.blog.csdn.net/article/details/95632571)
135+
134136
## Thanks For
135137

136138
- [flutter-go](https://github.com/alibaba/flutter-go)
@@ -141,7 +143,7 @@ iOS需要自行下载代码运行。(效果是一致的)
141143

142144
## 友情赞助
143145

144-
对Flutter有兴趣的可以通过下图的二维码购买陈航老师的课程
146+
想系统学习Flutter的可以通过下图的二维码购买陈航老师的课程
145147

146148
<img src="preview/jikeshijian.jpg" width="450px"/>
147149

android/app/src/main/java/com/weilu/deer/MainActivity.java

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,11 @@ private void logPrint(MethodCall call) {
4444
XLog.tag(tag).e(message);
4545
break;
4646
case "logJson":
47-
XLog.tag(tag).json(message);
47+
try {
48+
XLog.tag(tag).json(message);
49+
} catch (Exception e) {
50+
XLog.tag(tag).d(message);
51+
}
4852
break;
4953
default:
5054
XLog.tag(tag).v(message);

lib/login/login_page.dart

Lines changed: 9 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -60,26 +60,24 @@ class _LoginState extends State<Login> {
6060
_passwordController.addListener(_verify);
6161
_nameController.text = FlutterStars.SpUtil.getString(Constant.phone);
6262
}
63-
63+
6464
void _verify(){
6565
String name = _nameController.text;
6666
String password = _passwordController.text;
67+
bool isClick = true;
6768
if (name.isEmpty || name.length < 11) {
68-
setState(() {
69-
_isClick = false;
70-
});
71-
return;
69+
isClick = false;
7270
}
7371
if (password.isEmpty || password.length < 6) {
72+
isClick = false;
73+
}
74+
75+
/// 状态不一样在刷新,避免重复不必要的setState
76+
if (isClick != _isClick){
7477
setState(() {
75-
_isClick = false;
78+
_isClick = isClick;
7679
});
77-
return;
7880
}
79-
80-
setState(() {
81-
_isClick = true;
82-
});
8381
}
8482

8583
void _login(){

lib/login/register_page.dart

Lines changed: 11 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -27,36 +27,29 @@ class _RegisterState extends State<Register> {
2727
_vCodeController.addListener(_verify);
2828
_passwordController.addListener(_verify);
2929
}
30-
30+
3131
void _verify(){
3232
String name = _nameController.text;
3333
String vCode = _vCodeController.text;
3434
String password = _passwordController.text;
35+
bool isClick = true;
3536
if (name.isEmpty || name.length < 11) {
36-
setState(() {
37-
_isClick = false;
38-
});
39-
return;
37+
isClick = false;
4038
}
4139
if (vCode.isEmpty || vCode.length < 6) {
42-
setState(() {
43-
_isClick = false;
44-
});
45-
return;
40+
isClick = false;
4641
}
4742
if (password.isEmpty || password.length < 6) {
43+
isClick = false;
44+
}
45+
if (isClick != _isClick){
4846
setState(() {
49-
_isClick = false;
47+
_isClick = isClick;
5048
});
51-
return;
5249
}
53-
54-
setState(() {
55-
_isClick = true;
56-
});
5750
}
5851

59-
void _login(){
52+
void _register(){
6053
Toast.show("确认......");
6154
}
6255

@@ -102,8 +95,8 @@ class _RegisterState extends State<Register> {
10295
Gaps.vGap10,
10396
Gaps.vGap15,
10497
MyButton(
105-
onPressed: _isClick ? _login : null,
106-
text: "确认",
98+
onPressed: _isClick ? _register : null,
99+
text: "注册",
107100
)
108101
],
109102
),

lib/login/reset_password_page.dart

Lines changed: 11 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -27,36 +27,29 @@ class _ResetPasswordState extends State<ResetPassword> {
2727
_vCodeController.addListener(_verify);
2828
_passwordController.addListener(_verify);
2929
}
30-
30+
3131
void _verify(){
3232
String name = _nameController.text;
3333
String vCode = _vCodeController.text;
3434
String password = _passwordController.text;
35+
bool isClick = true;
3536
if (name.isEmpty || name.length < 11) {
36-
setState(() {
37-
_isClick = false;
38-
});
39-
return;
37+
isClick = false;
4038
}
4139
if (vCode.isEmpty || vCode.length < 6) {
42-
setState(() {
43-
_isClick = false;
44-
});
45-
return;
40+
isClick = false;
4641
}
4742
if (password.isEmpty || password.length < 6) {
43+
isClick = false;
44+
}
45+
if (isClick != _isClick){
4846
setState(() {
49-
_isClick = false;
47+
_isClick = isClick;
5048
});
51-
return;
5249
}
53-
54-
setState(() {
55-
_isClick = true;
56-
});
5750
}
5851

59-
void _login(){
52+
void _reset(){
6053
Toast.show("确认......");
6154
}
6255

@@ -80,7 +73,7 @@ class _ResetPasswordState extends State<ResetPassword> {
8073
controller: _nameController,
8174
maxLength: 11,
8275
keyboardType: TextInputType.phone,
83-
hintText: "请输入账号",
76+
hintText: "请输入手机号",
8477
),
8578
Gaps.vGap10,
8679
MyTextField(
@@ -102,7 +95,7 @@ class _ResetPasswordState extends State<ResetPassword> {
10295
Gaps.vGap10,
10396
Gaps.vGap15,
10497
MyButton(
105-
onPressed: _isClick ? _login : null,
98+
onPressed: _isClick ? _reset : null,
10699
text: "确认",
107100
)
108101
],

lib/login/sms_login_page.dart

Lines changed: 6 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -30,22 +30,18 @@ class _SMSLoginState extends State<SMSLogin> {
3030
void _verify(){
3131
String name = _phoneController.text;
3232
String vCode = _vCodeController.text;
33+
bool isClick = true;
3334
if (name.isEmpty || name.length < 11) {
34-
setState(() {
35-
_isClick = false;
36-
});
37-
return;
35+
isClick = false;
3836
}
3937
if (vCode.isEmpty || vCode.length < 6) {
38+
isClick = false;
39+
}
40+
if (isClick != _isClick){
4041
setState(() {
41-
_isClick = false;
42+
_isClick = isClick;
4243
});
43-
return;
4444
}
45-
46-
setState(() {
47-
_isClick = true;
48-
});
4945
}
5046

5147
void _login(){

lib/login/update_password_page.dart

Lines changed: 7 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -25,26 +25,22 @@ class _UpdatePasswordPageState extends State<UpdatePasswordPage> {
2525
_oldPwdController.addListener(_verify);
2626
_newPwdController.addListener(_verify);
2727
}
28-
28+
2929
void _verify(){
3030
String oldPwd = _oldPwdController.text;
3131
String newPwd = _newPwdController.text;
32+
bool isClick = true;
3233
if (oldPwd.isEmpty || oldPwd.length < 6) {
33-
setState(() {
34-
_isClick = false;
35-
});
36-
return;
34+
isClick = false;
3735
}
3836
if (newPwd.isEmpty || newPwd.length < 6) {
37+
isClick = false;
38+
}
39+
if (isClick != _isClick){
3940
setState(() {
40-
_isClick = false;
41+
_isClick = isClick;
4142
});
42-
return;
4343
}
44-
45-
setState(() {
46-
_isClick = true;
47-
});
4844
}
4945

5046
void _confirm(){

lib/net/intercept.dart

Lines changed: 6 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -166,28 +166,12 @@ class AdapterInterceptor extends Interceptor{
166166
content = content.substring(1, content.length - 1);
167167
}
168168
Map<String, dynamic> map = json.decode(content);
169-
if (map.containsKey(ERROR) && map[ERROR].toString() != null && map[ERROR].toString() != "null" ){
170-
List errorJson = json.decode(map[ERROR].toString());
171-
if (errorJson.length == 1){
172-
msg = errorJson[0][MESSAGE];
173-
}else {
174-
if (map.containsKey(MESSAGE)){
175-
msg = map[MESSAGE];
176-
}else if(map.containsKey(MSG)){
177-
msg = map[MSG];
178-
}else {
179-
msg = "";
180-
}
181-
}
182-
183-
}else{
184-
if (map.containsKey(MESSAGE)){
185-
msg = map[MESSAGE];
186-
}else if(map.containsKey(MSG)){
187-
msg = map[MSG];
188-
}else {
189-
msg = "";
190-
}
169+
if (map.containsKey(MESSAGE)){
170+
msg = map[MESSAGE];
171+
}else if(map.containsKey(MSG)){
172+
msg = map[MSG];
173+
}else {
174+
msg = "未知异常";
191175
}
192176
result = sprintf(FAILURE_FORMAT, [response.statusCode, msg]);
193177
// 401 token失效时,单独处理,其他一律为成功

lib/util/log_utils.dart

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -39,12 +39,8 @@ class Log{
3939

4040
static json(String msg, {tag: 'X-LOG'}) {
4141
if (debuggable){
42-
try {
43-
perform.invokeMethod('logJson', {'tag': tag, 'msg': msg});
44-
_print(msg, tag: tag);
45-
} catch (e) {
46-
d(msg);
47-
}
42+
perform.invokeMethod('logJson', {'tag': tag, 'msg': msg});
43+
_print(msg, tag: tag);
4844
}
4945
}
5046

0 commit comments

Comments
 (0)