@@ -7,6 +7,9 @@ import 'package:efox_flutter/store/index.dart'; //引用Store 层
77import 'package:efox_flutter/router/index.dart' show FluroRouter; //路由
88import 'package:efox_flutter/config/theme.dart' show AppTheme; //主题
99import '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+
1013// import './mock/index.dart' as TestCase;
1114class MainApp extends StatefulWidget {
1215 MainApp () {
@@ -17,6 +20,7 @@ class MainApp extends StatefulWidget {
1720 @override
1821 MainAppState createState () => MainAppState ();
1922}
23+
2024class MainAppState extends State <MainApp > {
2125 // 定义全局 语言代理
2226 AppLocalizationsDelegate _delegate;
@@ -27,39 +31,47 @@ class MainAppState extends State<MainApp> {
2731 _delegate = AppLocalizationsDelegate ();
2832
2933 Future .delayed (Duration .zero, () async {
30- Store .value <ConfigModel >(context ).getTheme ();
34+ Store .value <ConfigModel >().getTheme ();
3135 });
3236 }
3337
3438 @override
3539 Widget build (BuildContext context) {
3640 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+ );
4668 },
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],
6169 );
6270 }
6371}
6472
65- void main () => runApp (Store .init (child: MainApp ()));
73+ void main () => runApp (
74+ Store .init (
75+ child: MainApp (),
76+ ),
77+ );
0 commit comments