1+ import 'package:flutter/foundation.dart' ;
12import 'package:flutter/material.dart' ;
3+ // ignore: depend_on_referenced_packages
4+ import 'package:flutter_web_plugins/url_strategy.dart' ;
25import 'package:minimal/pages/pages.dart' ;
36import 'package:responsive_framework/responsive_framework.dart' ;
47
58void main () {
9+ WidgetsFlutterBinding .ensureInitialized ();
10+
11+ if (kIsWeb) {
12+ usePathUrlStrategy ();
13+ }
14+
615 runApp (const MyApp ());
716}
817
@@ -24,12 +33,28 @@ class MyApp extends StatelessWidget {
2433 child: child! ,
2534 ),
2635 initialRoute: '/' ,
36+ onGenerateInitialRoutes: (initialRoute) => [
37+ MaterialPageRoute (
38+ settings: RouteSettings (name: initialRoute),
39+ builder: (context) {
40+ String sanitizedRoute =
41+ initialRoute != '/' && initialRoute.startsWith ('/' )
42+ ? initialRoute.substring (1 )
43+ : initialRoute;
44+
45+ return BouncingScrollWrapper .builder (
46+ context, buildPage (sanitizedRoute),
47+ dragWithMouse: true );
48+ })
49+ ],
2750 onGenerateRoute: (RouteSettings settings) {
28- return MaterialPageRoute (builder: (context) {
29- return BouncingScrollWrapper .builder (
30- context, buildPage (settings.name ?? '' ),
31- dragWithMouse: true );
32- });
51+ return MaterialPageRoute (
52+ settings: RouteSettings (name: '/${settings .name }' ),
53+ builder: (context) {
54+ return BouncingScrollWrapper .builder (
55+ context, buildPage (settings.name ?? '' ),
56+ dragWithMouse: true );
57+ });
3358 },
3459 debugShowCheckedModeBanner: false ,
3560 );
0 commit comments