Skip to content
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.

Commit e237901

Browse files
committedMar 7, 2023
去掉对IClassName接口的引用,使用方法解决战斗
1 parent 20efad9 commit e237901

File tree

15 files changed

+51
-63
lines changed

15 files changed

+51
-63
lines changed
 

‎lib/base/interface.dart

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -7,15 +7,6 @@ abstract class IRetry {
77
void retry();
88
}
99

10-
abstract class IClassName {
11-
static String? className;
12-
13-
/// 协议的类方法必须要进行实现,否则就会报错
14-
// static String? Some();
15-
16-
// String some();
17-
}
18-
1910
abstract class IWebLoadInfo {
2011
int? id;
2112
int? originId;
@@ -30,8 +21,17 @@ abstract class IRequestController extends GetxController {}
3021
/// 危险,不要定义这个类
3122
/// typedef GetPage<T> = GetView<T>;
3223
33-
String typeName(Type type) => (type).toString();
24+
/// 下面这个类在使用上没有意义
25+
/*
26+
abstract class IClassName {
27+
static String? className;
28+
29+
/// 协议的类方法必须要进行实现,否则就会报错
30+
// static String? Some();
3431
32+
// String some();
33+
}
34+
*/
3535
class Box<T extends Object> {
3636
T value;
3737

‎lib/logger/class_name.dart

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
2+
String className(Object object) => (object).toString();
3+
4+
String typeName(Type type) => (type).toString();

‎lib/main.dart

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,4 +18,3 @@ run() async {
1818
final isFirst = await AccountManager().getIsFirstLaunch();
1919
runApp(MyApp(isFirst: isFirst));
2020
}
21-

‎lib/pages/coin_rank/bindings/coin_rank_binding.dart

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
import 'package:getx_study/logger/class_name.dart';
12
import 'package:pull_to_refresh/pull_to_refresh.dart';
23
import 'package:get/get.dart';
34
import 'package:getx_study/pages/coin_rank/controller/coin_rank_controller.dart';
@@ -12,11 +13,11 @@ class CoinRankBinding extends Bindings {
1213

1314
/// 需要通过tag来进行区分,避免RefreshController反复使用导致的内存泄露与崩溃
1415
Get.lazyPut(
15-
tag: CoinRankController.className,
16+
tag: className(CoinRankController),
1617
() => RefreshController(initialRefresh: true),
1718
);
1819
Get.lazyPut<int>(
19-
tag: CoinRankController.className,
20+
tag: className(CoinRankController),
2021
() => 1,
2122
);
2223
Get.lazyPut(

‎lib/pages/coin_rank/controller/coin_rank_controller.dart

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,20 @@
11
import 'package:get/get.dart';
22

33
import 'package:getx_study/base/base_refresh_controller.dart';
4-
import 'package:getx_study/base/interface.dart';
54
import 'package:getx_study/enum/response_status.dart';
65
import 'package:getx_study/entity/coin_rank_entity.dart';
6+
import 'package:getx_study/logger/class_name.dart';
77
import 'package:getx_study/pages/coin_rank/repository/coin_rank_repository.dart';
88
import 'package:getx_study/enum/scroll_view_action_type.dart';
99

1010
class CoinRankController
11-
extends BaseRefreshController<CoinRankRepository, CoinRankDatas>
12-
implements IClassName {
11+
extends BaseRefreshController<CoinRankRepository, CoinRankDatas> {
1312
@override
1413
void onInit() {
1514
super.onInit();
16-
initPage = Get.find<int>(tag: CoinRankController.className);
15+
initPage = Get.find<int>(tag: className(CoinRankController));
1716
page = initPage;
18-
refreshController = Get.find(tag: CoinRankController.className);
17+
refreshController = Get.find(tag: className(CoinRankController));
1918
}
2019

2120
@override
@@ -61,6 +60,4 @@ class CoinRankController
6160

6261
update();
6362
}
64-
65-
static String? get className => (CoinRankController).toString();
6663
}

‎lib/pages/home/binding/home_binding.dart

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import 'package:get/get.dart';
2+
import 'package:getx_study/logger/class_name.dart';
23
import 'package:pull_to_refresh/pull_to_refresh.dart';
34

45
import 'package:getx_study/pages/home/controller/home_controller.dart';
@@ -14,11 +15,11 @@ class HomeBinding extends Bindings {
1415
/// 需要通过tag来进行区分,避免RefreshController反复使用导致的内存泄露与崩溃
1516
/// 其实后来想想,其实把page与RefreshController在这里进行put,直接在onInit里面初始化反而逻辑更加简单
1617
Get.lazyPut(
17-
tag: HomeController.className,
18+
tag: className(HomeController),
1819
() => RefreshController(initialRefresh: true),
1920
);
2021
Get.lazyPut<int>(
21-
tag: HomeController.className,
22+
tag: className(HomeController),
2223
() => 1,
2324
);
2425
Get.lazyPut(

‎lib/pages/home/controller/home_controller.dart

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,29 +1,28 @@
11
import 'package:get/get.dart';
22

33
import 'package:getx_study/base/base_refresh_controller.dart';
4-
import 'package:getx_study/base/interface.dart';
54
import 'package:getx_study/entity/article_info_entity.dart';
65
import 'package:getx_study/entity/banner_entity.dart';
76
import 'package:getx_study/entity/base_entity.dart';
87
import 'package:getx_study/entity/page_entity.dart';
98
import 'package:getx_study/enum/response_status.dart';
109
import 'package:getx_study/enum/scroll_view_action_type.dart';
10+
import 'package:getx_study/logger/class_name.dart';
1111
import 'package:getx_study/logger/logger.dart';
1212
import 'package:getx_study/pages/home/repository/home_repository.dart';
1313

1414
class HomeController
15-
extends BaseRefreshController<HomeRepository, ArticleInfoDatas>
16-
implements IClassName {
15+
extends BaseRefreshController<HomeRepository, ArticleInfoDatas> {
1716
var banners = [];
1817

1918
var swiperAutoPlay = false.obs;
2019

2120
@override
2221
void onInit() {
2322
super.onInit();
24-
initPage = Get.find<int>(tag: HomeController.className);
23+
initPage = Get.find<int>(tag: className(HomeController));
2524
page = initPage;
26-
refreshController = Get.find(tag: HomeController.className);
25+
refreshController = Get.find(tag: className(HomeController));
2726
}
2827

2928
@override
@@ -95,6 +94,4 @@ class HomeController
9594

9695
update();
9796
}
98-
99-
static String? get className => (HomeController).toString();
10097
}

‎lib/pages/my/binding/my_coin_history_binding.dart

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
import 'package:getx_study/logger/class_name.dart';
12
import 'package:pull_to_refresh/pull_to_refresh.dart';
23
import 'package:get/get.dart';
34

@@ -13,11 +14,11 @@ class MyCoinHistoryBinding extends Bindings {
1314

1415
/// 需要通过tag来进行区分,避免RefreshController反复使用导致的内存泄露与崩溃
1516
Get.lazyPut(
16-
tag: MyCoinHistoryController.className,
17+
tag: className(MyCoinHistoryController),
1718
() => RefreshController(initialRefresh: true),
1819
);
1920
Get.lazyPut<int>(
20-
tag: MyCoinHistoryController.className,
21+
tag: className(MyCoinHistoryController),
2122
() => 1,
2223
);
2324
Get.lazyPut(

‎lib/pages/my/binding/my_collect_binding.dart

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
import 'package:getx_study/logger/class_name.dart';
12
import 'package:pull_to_refresh/pull_to_refresh.dart';
23
import 'package:get/get.dart';
34

@@ -11,11 +12,11 @@ class MyCollectBinding extends Bindings {
1112
() => MyCollectRepository(),
1213
);
1314
Get.lazyPut(
14-
tag: MyCollectController.className,
15+
tag: className(MyCollectController),
1516
() => RefreshController(initialRefresh: true),
1617
);
1718
Get.lazyPut<int>(
18-
tag: MyCollectController.className,
19+
tag: className(MyCollectController),
1920
() => 0,
2021
);
2122
Get.lazyPut(

‎lib/pages/my/controller/my_coin_history_controller.dart

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -5,17 +5,17 @@ import 'package:getx_study/base/interface.dart';
55
import 'package:getx_study/entity/my_coin_history_entity.dart';
66
import 'package:getx_study/enum/response_status.dart';
77
import 'package:getx_study/enum/scroll_view_action_type.dart';
8+
import 'package:getx_study/logger/class_name.dart';
89
import 'package:getx_study/pages/my/repository/my_coin_history_repository.dart';
910

1011
class MyCoinHistoryController
11-
extends BaseRefreshController<MyCoinHistoryRepository, MyCoinHistoryDatas>
12-
implements IClassName {
12+
extends BaseRefreshController<MyCoinHistoryRepository, MyCoinHistoryDatas> {
1313
@override
1414
void onInit() {
1515
super.onInit();
16-
initPage = Get.find<int>(tag: MyCoinHistoryController.className);
16+
initPage = Get.find<int>(tag: className(MyCoinHistoryController));
1717
page = initPage;
18-
refreshController = Get.find(tag: MyCoinHistoryController.className);
18+
refreshController = Get.find(tag: className(MyCoinHistoryController));
1919
}
2020

2121
@override
@@ -59,6 +59,4 @@ class MyCoinHistoryController
5959

6060
update();
6161
}
62-
63-
static String? get className => (MyCoinHistoryController).toString();
6462
}

‎lib/pages/my/controller/my_collect_controller.dart

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4,19 +4,19 @@ import 'package:getx_study/base/base_refresh_controller.dart';
44
import 'package:getx_study/base/interface.dart';
55
import 'package:getx_study/enum/response_status.dart';
66
import 'package:getx_study/entity/article_info_entity.dart';
7+
import 'package:getx_study/logger/class_name.dart';
78
import 'package:getx_study/pages/my/repository/my_collect_repository.dart';
89
import 'package:getx_study/enum/scroll_view_action_type.dart';
910
import 'package:getx_study/account_manager/account_manager.dart';
1011

1112
class MyCollectController
12-
extends BaseRefreshController<MyCollectRepository, ArticleInfoDatas>
13-
implements IClassName {
13+
extends BaseRefreshController<MyCollectRepository, ArticleInfoDatas> {
1414
@override
1515
void onInit() {
1616
super.onInit();
17-
initPage = Get.find(tag: MyCollectController.className);
17+
initPage = Get.find(tag: className(MyCollectController));
1818
page = initPage;
19-
refreshController = Get.find(tag: MyCollectController.className);
19+
refreshController = Get.find(tag: className(MyCollectController));
2020
}
2121

2222
@override
@@ -86,6 +86,4 @@ class MyCollectController
8686

8787
update();
8888
}
89-
90-
static String? get className => (MyCollectController).toString();
9189
}

‎lib/pages/search_result/bindings/search_result_binding.dart

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
import 'package:getx_study/logger/class_name.dart';
12
import 'package:pull_to_refresh/pull_to_refresh.dart';
23
import 'package:get/get.dart';
34

@@ -11,11 +12,11 @@ class SearchResultBinding extends Bindings {
1112
() => SearchResultRepository(),
1213
);
1314
Get.lazyPut(
14-
tag: SearchResultController.className,
15+
tag: className(SearchResultController),
1516
() => RefreshController(initialRefresh: true),
1617
);
1718
Get.lazyPut<int>(
18-
tag: SearchResultController.className,
19+
tag: className(SearchResultController),
1920
() => 1,
2021
);
2122
Get.lazyPut(

‎lib/pages/search_result/controller/search_result_controller.dart

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,20 @@
11
import 'package:get/get.dart';
22

33
import 'package:getx_study/base/base_refresh_controller.dart';
4-
import 'package:getx_study/base/interface.dart';
54
import 'package:getx_study/enum/response_status.dart';
65
import 'package:getx_study/entity/article_info_entity.dart';
6+
import 'package:getx_study/logger/class_name.dart';
77
import 'package:getx_study/pages/search_result/repository/search_result_repository.dart';
88
import 'package:getx_study/enum/scroll_view_action_type.dart';
99

1010
class SearchResultController
11-
extends BaseRefreshController<SearchResultRepository, ArticleInfoDatas>
12-
implements IClassName {
11+
extends BaseRefreshController<SearchResultRepository, ArticleInfoDatas> {
1312
@override
1413
void onInit() {
1514
super.onInit();
16-
initPage = Get.find(tag: SearchResultController.className);
15+
initPage = Get.find(tag: className(SearchResultController));
1716
page = initPage;
18-
refreshController = Get.find(tag: SearchResultController.className);
17+
refreshController = Get.find(tag: className(SearchResultController));
1918
}
2019

2120
@override
@@ -61,6 +60,4 @@ class SearchResultController
6160

6261
update();
6362
}
64-
65-
static String? get className => (SearchResultController).toString();
6663
}

‎lib/pages/tree/controller/tab_list_controller.dart

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,12 @@
11
import 'package:getx_study/base/base_refresh_controller.dart';
2-
import 'package:getx_study/base/interface.dart';
32
import 'package:getx_study/enum/response_status.dart';
43
import 'package:getx_study/entity/article_info_entity.dart';
54
import 'package:getx_study/enum/scroll_view_action_type.dart';
65
import 'package:getx_study/enum/tag_type.dart';
76
import 'package:getx_study/pages/tree/repository/tab_list_repository.dart';
87

98
class TabListController
10-
extends BaseRefreshController<TabListRepository, ArticleInfoDatas>
11-
implements IClassName {
9+
extends BaseRefreshController<TabListRepository, ArticleInfoDatas> {
1210

1311
late TagType tagType;
1412

@@ -56,6 +54,4 @@ class TabListController
5654

5755
update();
5856
}
59-
60-
static String? get className => (TabListController).toString();
6157
}

‎lib/pages/web/controller/web_controller.dart

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,7 @@ import 'package:getx_study/base/base_request_controller.dart';
77
import 'package:getx_study/account_manager/account_manager.dart';
88
import 'package:getx_study/pages/web/repository/web_repository.dart';
99

10-
class WebController extends BaseRequestController<WebRepository, Object?>
11-
with IClassName {
10+
class WebController extends BaseRequestController<WebRepository, Object?> {
1211
void Function()? hasActionCallback;
1312

1413
WebViewController? webViewController;
@@ -108,6 +107,4 @@ class WebController extends BaseRequestController<WebRepository, Object?>
108107
return false;
109108
}
110109
}
111-
112-
static String? get className => (WebController).toString();
113110
}

0 commit comments

Comments
 (0)
Please sign in to comment.