I Flutter Navigator er et kraftfuldt værktøj til styring af centraliseret tilstand og sidenavigation i din app. Det giver dig mulighed for at bygge apps med klar arkitektur og nem navigation mellem skærme.
Definere Routes
For at begynde at bruge Navigator, skal du definere routes i din app. Routes er individuelle skærme, som brugerne kan navigere til. Du kan definere routes ved hjælp af MaterialApp og give en samling af routes, hvor hver route er kortlagt til en Widget.
Eksempel:
MaterialApp(
initialRoute: '/',
routes: {
'/':(context) => HomePage(),
'/second':(context) => SecondPage(),
},
)
I eksemplet ovenfor har vi defineret to routes: '/'(home page)
og '/second'(second page
). Du kan tilføje så mange routes som nødvendigt.
Navigering mellem sider
For at navigere mellem sider kan du bruge Navigator 's metoder. En almindelig metode er pushNamed, som giver dig mulighed for at navigere til en anden side ved at angive navnet på den route.
Eksempel:
// Navigate to the second page
Navigator.pushNamed(context, '/second');
Derudover kan du bruge push-metoden til at navigere til en anden route og skifte mellem sider.
Overførsel af data mellem sider
Du kan overføre data mellem sider ved at bruge pushNamed-metoden med parameteren arguments.
Eksempel:
Navigator.pushNamed(
context,
'/second',
arguments: 'Data from the home page',
);
Derefter kan du få adgang til dataene fra den anden side ved hjælp af ModalRoute.of og indstillingsobjekterne:
class SecondPage extends StatelessWidget {
@override
Widget build(BuildContext context) {
String data = ModalRoute.of(context).settings.arguments;
// Use the data here
}
}
Går tilbage til den forrige side
For at gå tilbage til den forrige side kan du bruge pop-metoden Navigator. Dette vil lukke den aktuelle side og vende tilbage til den forrige side i stakken.
Eksempel:
// Go back to the previous page
Navigator.pop(context);
Konklusion
Navigator i Flutter giver dig mulighed for at administrere centraliseret tilstand og nemt navigere mellem sider. Ved at bruge Navigator kan du bygge apps med klar arkitektur og give en bedre brugeroplevelse, når du navigerer mellem skærme.