goto method
Implementation
Future<void> goto(String? url, {String? transition, required dynamic initiator}) async {
// page in navigation history?
var list = _pages.reversed.toList();
// find the page
Page? page;
if (url == "/" && _pages.isNotEmpty) {
page = _pages.first;
} else {
page = list.firstWhereOrNull((page) => (page.name == url));
}
// open the page if not found in the navigation history
if (page == null) return _open(url, transition: transition);
var i = list.indexOf(page);
// go back
_goBack(i, initiator: initiator);
}