@@ -7,6 +7,9 @@ import 'package:efox_flutter/store/index.dart'; //引用Store 层
7
7
import 'package:efox_flutter/router/index.dart' show FluroRouter; //路由
8
8
import 'package:efox_flutter/config/theme.dart' show AppTheme; //主题
9
9
import 'package:efox_flutter/utils/analytics.dart' as Analytics; //统计
10
+ import 'package:oktoast/oktoast.dart' show OKToast;
11
+ import 'package:efox_flutter/page/home.dart' as HomePage;
12
+
10
13
// import './mock/index.dart' as TestCase;
11
14
class MainApp extends StatefulWidget {
12
15
MainApp () {
@@ -17,6 +20,7 @@ class MainApp extends StatefulWidget {
17
20
@override
18
21
MainAppState createState () => MainAppState ();
19
22
}
23
+
20
24
class MainAppState extends State <MainApp > {
21
25
// 定义全局 语言代理
22
26
AppLocalizationsDelegate _delegate;
@@ -27,39 +31,47 @@ class MainAppState extends State<MainApp> {
27
31
_delegate = AppLocalizationsDelegate ();
28
32
29
33
Future .delayed (Duration .zero, () async {
30
- Store .value <ConfigModel >(context ).getTheme ();
34
+ Store .value <ConfigModel >().getTheme ();
31
35
});
32
36
}
33
37
34
38
@override
35
39
Widget build (BuildContext context) {
36
40
Store .of (context);
37
- print ('Store.value<ConfigModel>(context)=${Store .value <ConfigModel >(context ).theme }' );
38
- return MaterialApp (
39
- localeResolutionCallback: (deviceLocale, supportedLocales) {
40
- print (
41
- 'deviceLocale=$deviceLocale supportedLocales=$supportedLocales ' );
42
- Locale _locale = supportedLocales.contains (deviceLocale)
43
- ? deviceLocale
44
- : Locale ('zh' );
45
- return _locale;
41
+ return Consumer <ConfigModel >(
42
+ builder: (context, configModel, child) {
43
+ return MaterialApp (
44
+ localeResolutionCallback: (deviceLocale, supportedLocales) {
45
+ print (
46
+ 'deviceLocale=$deviceLocale supportedLocales=$supportedLocales context=$context ' );
47
+ Locale _locale = supportedLocales.contains (deviceLocale)
48
+ ? deviceLocale
49
+ : Locale ('zh' );
50
+ return _locale;
51
+ },
52
+ onGenerateTitle: (ctx) {
53
+ // 设置多语言代理
54
+ AppLocalizations .setProxy (setState, _delegate);
55
+ return 'flutter' ;
56
+ },
57
+ localizationsDelegates: [
58
+ GlobalMaterialLocalizations .delegate,
59
+ GlobalWidgetsLocalizations .delegate,
60
+ _delegate,
61
+ ],
62
+ supportedLocales: ConfigLanguage .supportedLocales,
63
+ theme: AppTheme .getThemeData (configModel.theme),
64
+ // onGenerateRoute: FluroRouter.router.generator,
65
+ home: HomePage .Index (),
66
+ navigatorObservers: < NavigatorObserver > [Analytics .observer],
67
+ );
46
68
},
47
- onGenerateTitle: (ctx) {
48
- // 设置多语言代理
49
- AppLocalizations .setProxy (setState, _delegate);
50
- return 'flutter' ;
51
- },
52
- localizationsDelegates: [
53
- GlobalMaterialLocalizations .delegate,
54
- GlobalWidgetsLocalizations .delegate,
55
- _delegate,
56
- ],
57
- supportedLocales: ConfigLanguage .supportedLocales,
58
- theme: AppTheme .getThemeData (Store .value <ConfigModel >(context).theme),
59
- onGenerateRoute: FluroRouter .router.generator,
60
- navigatorObservers: < NavigatorObserver > [Analytics .observer],
61
69
);
62
70
}
63
71
}
64
72
65
- void main () => runApp (Store .init (child: MainApp ()));
73
+ void main () => runApp (
74
+ Store .init (
75
+ child: MainApp (),
76
+ ),
77
+ );
0 commit comments