Δηλωτική πλοήγηση και επικαλύμματα για Flutter.
Οδηγήστε τις σελίδες του Navigator 2.0 και τα τοπικά επικαλύμματα χωρίς Navigator.push/pop ή showDialog.
Οι σελίδες είναι δεδομένα
Το PageEntry αποθηκεύει μόνο μεταδεδομένα. Το UI δημιουργείται από τον resolver σας.
Τοπικά επικαλύμματα οθόνης
Οι διάλογοι και τα κάτω φύλλα περιορίζονται ανά οθόνη χωρίς καθολική κατάσταση.
Ανεξάρτητο από κατάσταση
Χρησιμοποιήστε setState, Riverpod, Bloc ή Provider. Δεν απαιτούνται εξαρτήσεις.
Πρώτα βήματα
Εγκαταστήστε το declarative_nav και αποδώστε σελίδες μέσω callback του resolver.
Εγκατάσταση
Οδηγός χρήσης
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,
);
}
}
Σημαντική σημείωση
Αυτό το πακέτο αποφεύγει Navigator.push/pop και κλήσεις showDialog. Οδηγήστε την πλοήγηση και τα επικαλύμματα από την κατάσταση.
Προηγούμενο
ΕπισκόπησηΕπόμενο
Εγκατάσταση