X Tutup
Skip to content

Commit d25c063

Browse files
committed
fix 用户动态错位与缓存问题
1 parent ad36b6e commit d25c063

File tree

3 files changed

+32
-45
lines changed

3 files changed

+32
-45
lines changed

lib/page/MyPage.dart

Lines changed: 1 addition & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,6 @@ class _MyPageState extends BasePersonState<MyPage> {
3636

3737
Color notifyColor = const Color(GSYColors.subTextColor);
3838

39-
final List<UserOrg> orgList = new List();
4039

4140

4241
Store<GSYState> _getStore() {
@@ -73,27 +72,6 @@ class _MyPageState extends BasePersonState<MyPage> {
7372
});
7473
}
7574

76-
_getUserOrg(String userName) {
77-
if (page <= 1) {
78-
UserDao.getUserOrgsDao(userName, page, needDb: true).then((res) {
79-
if (res != null && res.result) {
80-
setState(() {
81-
orgList.clear();
82-
orgList.addAll(res.data);
83-
});
84-
return res.next;
85-
}
86-
return new Future.value(null);
87-
}).then((res) {
88-
if (res != null && res.result) {
89-
setState(() {
90-
orgList.clear();
91-
orgList.addAll(res.data);
92-
});
93-
}
94-
});
95-
}
96-
}
9775

9876
@override
9977
bool get wantKeepAlive => true;
@@ -116,7 +94,7 @@ class _MyPageState extends BasePersonState<MyPage> {
11694
UserDao.getUserInfo(null).then((res) {
11795
if (res != null && res.result) {
11896
_getStore().dispatch(UpdateUserAction(res.data));
119-
_getUserOrg(_getUserName());
97+
getUserOrg(_getUserName());
12098
}
12199
});
122100
ReposDao.getUserRepository100StatusDao(_getUserName()).then((res) {

lib/page/PersonPage.dart

Lines changed: 1 addition & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -121,33 +121,12 @@ class _PersonState extends BasePersonState<PersonPage> {
121121
return userInfo.login;
122122
}
123123

124-
_getUserOrg() {
125-
if (page <= 1) {
126-
UserDao.getUserOrgsDao(userName, page, needDb: true).then((res) {
127-
if (res != null && res.result) {
128-
setState(() {
129-
orgList.clear();
130-
orgList.addAll(res.data);
131-
});
132-
return res.next;
133-
}
134-
return new Future.value(null);
135-
}).then((res) {
136-
if (res != null && res.result) {
137-
setState(() {
138-
orgList.clear();
139-
orgList.addAll(res.data);
140-
});
141-
}
142-
});
143-
}
144-
}
145124

146125
_getDataLogic() async {
147126
if (userInfo.type == "Organization") {
148127
return await UserDao.getMemberDao(_getUserName(), page);
149128
}
150-
_getUserOrg();
129+
getUserOrg(_getUserName());
151130
return await EventDao.getEventDao(_getUserName(), page: page, needDb: page <= 1);
152131
}
153132

lib/widget/BasePersonState.dart

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,7 @@
1+
import 'dart:async';
2+
13
import 'package:flutter/material.dart';
4+
import 'package:gsy_github_app_flutter/common/dao/UserDao.dart';
25
import 'package:gsy_github_app_flutter/common/model/Event.dart';
36
import 'package:gsy_github_app_flutter/common/model/User.dart';
47
import 'package:gsy_github_app_flutter/common/model/UserOrg.dart';
@@ -16,6 +19,9 @@ import 'package:gsy_github_app_flutter/widget/UserItem.dart';
1619

1720
abstract class BasePersonState<T extends StatefulWidget> extends GSYListState<T> {
1821

22+
final List<UserOrg> orgList = new List();
23+
24+
@protected
1925
renderItem(index, User userInfo, String beStaredCount, Color notifyColor, VoidCallback refreshCallBack, List<UserOrg> orgList) {
2026
if (index == 0) {
2127
return new UserHeaderItem(userInfo, beStaredCount, Theme.of(context).primaryColor,
@@ -41,4 +47,28 @@ abstract class BasePersonState<T extends StatefulWidget> extends GSYListState<T>
4147

4248
@override
4349
bool get needHeader => true;
50+
51+
@protected
52+
getUserOrg(String userName) {
53+
if (page <= 1) {
54+
UserDao.getUserOrgsDao(userName, page, needDb: true).then((res) {
55+
if (res != null && res.result) {
56+
setState(() {
57+
orgList.clear();
58+
orgList.addAll(res.data);
59+
});
60+
return res.next;
61+
}
62+
return new Future.value(null);
63+
}).then((res) {
64+
if (res != null && res.result) {
65+
setState(() {
66+
orgList.clear();
67+
orgList.addAll(res.data);
68+
});
69+
}
70+
});
71+
}
72+
}
73+
4474
}

0 commit comments

Comments
 (0)
X Tutup