replaceRoute<T extends Object?, TO extends Object?> function

Future<T?> replaceRoute<T extends Object?, TO extends Object?>(
  1. String path, {
  2. Map<String, String?>? query,
  3. Map<String, Object?>? body,
  4. BuildContext? context,
})

替换一个路由

query是一个只有字符串键值对的Map, 直接拼接在路径后面, 这样可以在web环境下保持状态 body可以为任意对象, 但是不能在不同会话之间保持(比如web端的刷新)

Implementation

Future<T?> replaceRoute<T extends Object?, TO extends Object?>(
  String path, {
  Map<String, String?>? query,
  Map<String, Object?>? body,
  BuildContext? context,
}) {
  final navigator = gNavigatorKey.currentState ?? context?.navigator;
  if (navigator == null) throw _kNoNav;

  return navigator.pushReplacementNamed<T, TO>(_routeName(path, query),
      arguments: body);
}