Skip to content

Commit d47ec41

Browse files
committed
add "flutter_route" use 'RouteManager' manage route
1 parent c5cbd7d commit d47ec41

File tree

8 files changed

+139
-165
lines changed

8 files changed

+139
-165
lines changed

android/gradle.properties

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,3 @@
11
org.gradle.jvmargs=-Xmx1536M
22

3+
android.enableR8=true

lib/component/login/LoginContract.dart

Lines changed: 0 additions & 42 deletions
This file was deleted.

lib/component/login/LoginRepository.dart

Lines changed: 0 additions & 53 deletions
This file was deleted.

lib/component/login/LoginSource.dart

Lines changed: 0 additions & 17 deletions
This file was deleted.

lib/component/login/LoginPresenter.dart renamed to lib/component/login/login_contract.dart

Lines changed: 88 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,14 @@
1+
import 'package:flutter_app_sample/component/BaseView.dart';
12
import 'package:flutter_app_sample/component/BasePresenter.dart';
2-
import 'package:flutter_app_sample/component/login/LoginSource.dart';
33
import 'package:flutter/material.dart';
4-
import 'package:flutter_app_sample/net/HttpContext.dart';
5-
import 'package:flutter_app_sample/component/login/LoginContract.dart';
6-
import 'package:flutter_app_sample/common/util/LogUtil.dart';
7-
import 'package:flutter_app_sample/data/response/User.dart';
84

9-
class LoginPresenter extends ILoginPresenter {
5+
/// LoginPresenter
6+
class LoginPresenter extends BasePresenter {
107
ILoginView _loginView;
11-
LoginSource _loginSource;
8+
LoginRepository _loginSource;
129

1310
LoginPresenter({
14-
@required LoginSource loginSource,
11+
@required LoginRepository loginSource,
1512
@required ILoginView loginView,
1613
}) {
1714
this._loginSource = loginSource;
@@ -81,3 +78,86 @@ class LoginPresenter extends ILoginPresenter {
8178
// );
8279
}
8380
}
81+
82+
///
83+
/// ILoginView
84+
abstract class ILoginView extends BaseView<LoginPresenter> {
85+
///获取验证码
86+
getVerificationCode();
87+
88+
///开始获取验证码
89+
getVerificationCodeStart();
90+
91+
///完成获取验证码
92+
getVerificationCodeStop();
93+
94+
///获取验证码成功
95+
getVerificationCodeSuccess();
96+
97+
///获取验证码失败
98+
getVerificationCodeFailure();
99+
100+
///登陆
101+
login();
102+
103+
///登陆开始
104+
loginStart();
105+
106+
///登陆完成
107+
loginStop();
108+
109+
///登陆成功
110+
loginSuccess();
111+
112+
///登陆失败
113+
loginFailure();
114+
}
115+
116+
class LoginRepository {
117+
// @override
118+
// getVerificationCode({
119+
// @required dynamic data,
120+
// @required ResponseCallback responseCallback,
121+
// }) {
122+
// HttpContext().postHttp(
123+
// postOption: PostOption(
124+
// urlPath: ApiConfig.GET_VERIFICATION_CODE_URL,
125+
// data: data,
126+
// ),
127+
// responseCallback: ResponseCallback(
128+
// successCallback: (SuccessData successData) {
129+
// //成功
130+
// responseCallback.successCallback(successData);
131+
// },
132+
// failureCallback: (FailureData failureData) {
133+
// //失败
134+
// responseCallback.failureCallback(failureData);
135+
// },
136+
// ),
137+
// );
138+
//
139+
// return null;
140+
// }
141+
//
142+
// @override
143+
// login({
144+
// @required dynamic data,
145+
// @required ResponseCallback responseCallback,
146+
// }) {
147+
// HttpContext().postHttp(
148+
// postOption: PostOption(
149+
// urlPath: ApiConfig.LOGIN_URL,
150+
// data: data,
151+
// ),
152+
// responseCallback: ResponseCallback(
153+
// successCallback: (SuccessData successData) {
154+
// responseCallback.successCallback(successData);
155+
// },
156+
// failureCallback: (FailureData failureData) {
157+
// responseCallback.failureCallback(failureData);
158+
// },
159+
// ),
160+
// );
161+
// return null;
162+
// }
163+
}

lib/component/login/LoginPage.dart renamed to lib/component/login/login_page.dart

Lines changed: 12 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,11 @@
11
import 'package:flutter/material.dart';
2-
import 'package:flutter_app_sample/component/main/MainPage.dart';
3-
//import 'dart:io';
4-
import 'package:flutter_app_sample/ui/base/AppCommonStatefulPage.dart';
2+
import 'package:flutter_app_sample/common/config/StringConfig.dart';
53
import 'package:flutter_app_sample/common/util/StringUtil.dart';
6-
import 'package:flutter_app_sample/component/login/LoginContract.dart';
7-
import 'package:flutter_app_sample/component/login/LoginRepository.dart';
8-
import 'package:flutter_app_sample/component/login/LoginPresenter.dart';
9-
import 'package:flutter_app_sample/component/test/TestPage.dart';
10-
import 'package:flutter_app_sample/ui/route/AppRoute.dart';
11-
import 'package:flutter_app_sample/component/shop/ShoppingList.dart';
124
import 'package:flutter_app_sample/component/shop/Product.dart';
13-
import 'package:flutter_app_sample/common/config/StringConfig.dart';
5+
import 'package:flutter_app_sample/component/shop/ShoppingList.dart';
6+
import 'package:flutter_app_sample/ui/base/AppCommonStatefulPage.dart';
7+
8+
import 'login_contract.dart';
149

1510
///登陆页面
1611
///
@@ -85,14 +80,14 @@ class LoginPage extends AppCommonStatefulPage implements ILoginView {
8580
// if (Platform.isIOS) {
8681
// return Text("");
8782
// } else {
88-
return FlatButton(
89-
textColor: Colors.blue,
90-
onPressed: () {
91-
///退出程序!
83+
return FlatButton(
84+
textColor: Colors.blue,
85+
onPressed: () {
86+
///退出程序!
9287
// exit(exitCode);
93-
},
94-
child: Text("退出"),
95-
);
88+
},
89+
child: Text("退出"),
90+
);
9691
// }
9792
}
9893

lib/main.dart

Lines changed: 33 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import 'package:flutter/material.dart';
2+
import 'package:flutter_app_sample/component/login/login_page.dart';
23
import 'package:flutter_app_sample/ui/base/AppCommonStatefulPage.dart';
3-
import 'package:flutter_app_sample/component/login/LoginPage.dart';
44
import 'package:flutter_app_sample/component/test/TestPage.dart';
55
import 'package:flutter_app_sample/component/main/MainPage.dart';
66
import 'package:flutter_app_sample/component/shop/ShoppingList.dart';
@@ -20,6 +20,7 @@ import 'package:flutter_app_sample/sample/notifier/CardMainPage.dart';
2020
import 'package:flutter_app_sample/sample/notifier/CardInfoPage.dart';
2121
import 'package:flutter_app_sample/sample/drag/DragListPage.dart';
2222
import 'package:flutter_app_sample/sample/DrawerVariouslyPage.dart';
23+
import 'package:flutter_route/flutter_route.dart';
2324

2425
// Register the RouteObserver as a navigation observer.
2526
@deprecated //2019
@@ -31,34 +32,38 @@ void main() => runApp(MaterialApp(
3132
),
3233

3334
///全局静态路由的配置!
34-
routes: <String, WidgetBuilder>{
35-
"LoginPage": (BuildContext context) => LoginPage(),
36-
"MainPage": (BuildContext context) => MainPage(),
37-
"TestPage": (BuildContext context) => TestPage(),
38-
"ShoppingList": (BuildContext context) => ShoppingListPage(),
39-
"MainSortListPage": (BuildContext context) => MainSortListPage(),
40-
"ViewPagerFragmentPage": (BuildContext context) =>
41-
ViewPagerFragmentPage(),
42-
"CollapsingToolbarPage": (BuildContext context) =>
43-
CollapsingToolbarPage(),
44-
"MainAnimSortPage": (BuildContext context) => MainAnimSortPage(),
45-
"AnimOfSwitchPage": (BuildContext context) => AnimOfSwitchPage(),
46-
"AnimatedContainerPage": (BuildContext context) =>
47-
AnimatedContainerPage(),
48-
"OpacityAndAnimatedOpacityPage": (BuildContext context) =>
49-
OpacityAndAnimatedOpacityPage(),
50-
"FadeInImagePage": (BuildContext context) => FadeInImagePage(),
51-
"HeroAnimPage": (BuildContext context) => HeroAnimPage(),
52-
"TransformPage": (BuildContext context) => TransformPage(),
53-
"AnimatedBuilderPage": (BuildContext context) => AnimatedBuilderPage(),
54-
"ColorTweenPage": (BuildContext context) => ColorTweenPage(),
55-
"CardMainPage": (BuildContext context) => CardMainPage(),
56-
"CardInfoPage": (BuildContext context) => CardInfoPage(),
57-
"DragListPage": (BuildContext context) => DragListPage(),
58-
"DrawerVariouslyPage": (BuildContext context) => DrawerVariouslyPage(),
59-
},
35+
routes: RouteManager.initializeRoutes(
36+
routes: <String, WidgetBuilder>{
37+
"LoginPage": (BuildContext context) => LoginPage(),
38+
"MainPage": (BuildContext context) => MainPage(),
39+
"TestPage": (BuildContext context) => TestPage(),
40+
"ShoppingList": (BuildContext context) => ShoppingListPage(),
41+
"MainSortListPage": (BuildContext context) => MainSortListPage(),
42+
"ViewPagerFragmentPage": (BuildContext context) =>
43+
ViewPagerFragmentPage(),
44+
"CollapsingToolbarPage": (BuildContext context) =>
45+
CollapsingToolbarPage(),
46+
"MainAnimSortPage": (BuildContext context) => MainAnimSortPage(),
47+
"AnimOfSwitchPage": (BuildContext context) => AnimOfSwitchPage(),
48+
"AnimatedContainerPage": (BuildContext context) =>
49+
AnimatedContainerPage(),
50+
"OpacityAndAnimatedOpacityPage": (BuildContext context) =>
51+
OpacityAndAnimatedOpacityPage(),
52+
"FadeInImagePage": (BuildContext context) => FadeInImagePage(),
53+
"HeroAnimPage": (BuildContext context) => HeroAnimPage(),
54+
"TransformPage": (BuildContext context) => TransformPage(),
55+
"AnimatedBuilderPage": (BuildContext context) =>
56+
AnimatedBuilderPage(),
57+
"ColorTweenPage": (BuildContext context) => ColorTweenPage(),
58+
"CardMainPage": (BuildContext context) => CardMainPage(),
59+
"CardInfoPage": (BuildContext context) => CardInfoPage(),
60+
"DragListPage": (BuildContext context) => DragListPage(),
61+
"DrawerVariouslyPage": (BuildContext context) =>
62+
DrawerVariouslyPage(),
63+
},
64+
),
6065
navigatorObservers: [
61-
routeObserver,
66+
RouteManager.getInstance(),
6267
],
6368
));
6469

pubspec.yaml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,11 @@ dependencies:
2727
dio: ^3.0.2
2828
provider: ^3.0.0
2929

30+
# Route package.
31+
flutter_route:
32+
git:
33+
url: https://github.com/pdliuw/flutter_route.git
34+
3035
dev_dependencies:
3136
flutter_test:
3237
sdk: flutter

0 commit comments

Comments
 (0)