Усталяванне
Дадайце пакет, а затым перанясіце навігацыю і overlay у яўны стан. Не змяшчайце імператыўны push/pop у той жа стэк.
Адна залежнасць
Усталёўка адной камандай pub. Ніякая падрыхтоўка для генерацыі кода не патрэбна.
API, арыентаваны на стан
Вы кіруеце List<PageEntry> і неабавязковым OverlayRequest як чыстым станам.
Паступовае ўкараненне
Пачніце з аднаго функцыянальнага патоку і мігруйце экран за экранам.
Усталяваць і ініцыялізаваць
Выкарыстайце pub add, затым падключыце пачатковы root-стан для старонак і overlay.
Каманда
Пачатковы стан праграмы
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'),
];
}
}
Абмежаванне
У адным стэку, PageEntry.key павінен заставацца ўнікальным бо гэта становіцца ідэнтычнасцю старонкі Navigator.
Папярэдняя
УводзіныДалей
Старонкі і рэзолвер