pushRoute<T> function

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

push一个路由

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

Implementation

Future<T?> pushRoute<T>(
  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.pushNamed<T>(_routeName(path, query), arguments: body);
}