Deklaratiivne navigeerimine ja overlay'd Flutteri jaoks.
Juhi Navigator 2.0 lehti ja ekraanipõhiseid overlay'sid ilma Navigator.push/pop või showDialog.
Lehed on andmed
PageEntry salvestab ainult metaandmed. UI luuakse sinu resolveri poolt.
Ekraanipõhised overlay'd
Dialoogid ja bottom sheet'id on iga ekraani piires ilma globaalse olekuta.
Olekust sõltumatu
Kasuta setState, Riverpod, Bloc või Provider. Sõltuvusi pole vaja.
Esimesed sammud
Paigalda declarative_nav ja renderda lehed resolveri callback'iga.
Paigaldus
Kasutusjuhend
class AppRootState extends State<AppRoot> {
OverlayRequest? _overlay;
late List<PageEntry> _pages;
@override
void initState() {
super.initState();
_pages = const [PageEntry(key: 'home', name: '/home')];
}
Widget build(BuildContext context) {
return DeclarativePagesNavigator(
pages: _pages,
buildPage: _buildPage,
onPopTop: _popTop,
canPopTop: () => _overlay == null,
);
}
}
Oluline märkus
See pakett väldib Navigator.push/pop ja showDialogi väljakutseid. Juhi navigeerimist ja overlay'sid oleku kaudu.