Flutter 如何使用onGenerateRoute在URL中显示Flatter Web路由名称?

Flutter 如何使用onGenerateRoute在URL中显示Flatter Web路由名称?,flutter,flutter-web,Flutter,Flutter Web,我在MaterialApp上使用onGenerateRoute参数进行路由 MaterialApp( ... onGenerateRoute: Router.generateRoute, ... ) 然后使用pushNamed() 我想在url中显示我的路由名称,但我无法使用onGenerateRoute实现这一点 如果我在MaterialApp中使用路由: 像这样: MaterialApp( ... routes: {sliverScreen: (contex

我在MaterialApp上使用onGenerateRoute参数进行路由

MaterialApp(
  ...
  onGenerateRoute: Router.generateRoute,
  ...
)
然后使用
pushNamed()

我想在url中显示我的路由名称,但我无法使用onGenerateRoute实现这一点

如果我在MaterialApp中使用
路由:

像这样:

  MaterialApp(
    ...
    routes: {sliverScreen: (context) => SliverScreen()},
    ...
  )

它起作用了。但如果我在MaterialApp上提供了onGenerateRoute,我认为这是多余的。

您可以将
名称添加到生成的路由中,它将出现在URL中:

materialpage路线(
建筑商:,
设置:路由设置(名称:“SOMENAME”))

当我使用web builder(
flatter run-d chrome
flatter build web
)时,我认为最好在“SOMENAME”前面加一个斜杠。也就是说:
settings:RouteSettings(name:'/SOMENAME'))
生成了一个url,我不知道这个url在web构建中的作用,但我并不质疑它。@chongman有两种客户端路由模式:
hash
基于和
history api
基于。第一个更健壮(但不那么漂亮)。我相信,在stable
FlatterforWeb
release中,我们将能够选择其中之一。