Flutter కోసం ప్రకటనాత్మక నావిగేషన్ మరియు ఓవర్లేలు.
Navigator.push/pop లేదా showDialog లేకుండా Navigator 2.0 పేజీలు మరియు స్క్రీన్-లోకల్ ఓవర్లేలను నియంత్రించండి.
పేజీలు డేటా
PageEntry మెటాడేటాను మాత్రమే నిల్వ చేస్తుంది. UI మీ resolver ద్వారా సృష్టించబడుతుంది.
స్క్రీన్-లోకల్ ఓవర్లేలు
డైలాగ్లు మరియు bottom sheet లు ప్రతి స్క్రీన్కు పరిమితమై ఉంటాయి, గ్లోబల్ స్టేట్ లేకుండా.
స్టేట్-అగ్నోస్టిక్
setState, Riverpod, Bloc లేదా Provider ఉపయోగించండి. ఎలాంటి ఆధారాలు అవసరం లేదు.
మొదటి అడుగులు
declarative_nav ని ఇన్స్టాల్ చేసి resolver callback ద్వారా పేజీలను render చేయండి.
ఇన్స్టాలేషన్
flutter pub add declarative_nav
వినియోగ మార్గదర్శకం
app_root.dart
class AppRoot extends StatefulWidget {
const AppRoot({super.key});
@override
State<AppRoot> createState() => _AppRootState();
}
class _AppRootState extends State<AppRoot> {
OverlayRequest? _overlay;
late List<PageEntry> _pages;
@override
void initState() {
super.initState();
_pages = const [PageEntry(key: 'home', name: '/home')];
}
Widget buildPage(BuildContext context, PageEntry page) {
return HomePage(onOpenDialog: _openDialog);
}
@override
Widget build(BuildContext context) {
return DeclarativePagesNavigator(
pages: _pages,
buildPage: buildPage,
onPopTop: _popTop,
canPopTop: () => _overlay == null,
);
}
}
ముఖ్య గమనిక
ఈ ప్యాకేజ్ Navigator.push/pop మరియు showDialog కాల్స్ను నివారిస్తుంది. నావిగేషన్ మరియు ఓవర్లేలను స్టేట్ నుండి నడపండి.
మునుపటి
ఓవerviewతరువాత
ఇన్స్టాలేషన్