Instalare

Add the package, then move navigation and overlays into explicit state. Keep imperative push/pop out of the same stack.

O singură dependență

Install with one pub command. No code generation setup is required.

API orientat pe stare

You control a List<PageEntry> and optional OverlayRequest as pure state.

Adoptare incrementală

Porniți de la un singur flux funcțional și migrați ecran cu ecran.

Instalare și inițializare

Folosiți pub add, apoi conectați starea inițială rădăcină pentru pagini și overlay.

Comandă

Starea inițială a aplicației

import 'package:declarative_nav/declarative_nav.dart';

class _AppRootState extends State<AppRoot> {
  OverlayRequest? _overlay;
  late List<PageEntry> _pages;

  @override
  void initState() {
    super.initState();
    _pages = const [
      PageEntry(key: 'home', name: '/home'),
    ];
  }
}
Constraint

Într-o singură stivă, PageEntry.key trebuie să rămână unic deoarece devine identitatea paginii Navigatorului.