动我项目仓库 flutter:3.22 dart:3.4.4
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

56 lines
1.5 KiB

import 'package:dating_touchme_app/pages/home_page.dart';
import 'package:dating_touchme_app/pages/index_page.dart';
import 'package:dating_touchme_app/provide/user_info.dart';
import 'package:dating_touchme_app/router/app_router.dart';
import 'package:dating_touchme_app/utils/global_modal.dart';
import 'package:flutter/material.dart';
import 'package:flutter_screenutil/flutter_screenutil.dart';
import 'package:provider/provider.dart';
void main() {
final appRouter = AppRouter();
runApp(MyApp(routerConfig: appRouter.router,));
}
class MyApp extends StatefulWidget {
final RouterConfig<Object> routerConfig;
const MyApp({super.key, required this.routerConfig});
@override
State<MyApp> createState() => _MyAppState();
}
class _MyAppState extends State<MyApp> {
@override
void initState(){
super.initState();
registerGlobalModals();
}
@override
Widget build(BuildContext context) {
//全局挂载provide
return MultiProvider(
providers: [
ChangeNotifierProvider(create: (_) => UserInfo()),
],
//全局设定ui尺寸
child: ScreenUtilInit(
designSize: const Size(375, 667),
builder: (context, child){
return MaterialApp.router(
theme: ThemeData(
scaffoldBackgroundColor: Colors.white,
),
builder: (context, child) => GlobalModalHost(child: child ?? const SizedBox()),
routerConfig: widget.routerConfig,
);
},
),
);
}
}