redirectTo method
Redirects to the given named Route.
Implementation
Future<void> redirectTo(String name, [Map? params, int? code]) async {
if (!isOpen) throw closed();
Route? findRoute(Router r) {
for (var route in r.routes) {
if (route is SymlinkRoute) {
final m = findRoute(route.router);
if (m != null) return m;
} else if (route.name == name) {
return route;
}
}
return null;
}
var matched = findRoute(app!);
if (matched != null) {
await redirect(
matched.makeUri(params!.keys.fold<Map<String, dynamic>>({}, (out, k) {
return out..[k.toString()] = params[k];
})),
code: code);
return;
}
throw ArgumentError.notNull('Route to redirect to ($name)');
}