在我的主要方法中我有
onGenerateRoute: (route) {
print(route);
return Router.generateRoute(route);
}
如果我输入 URLhttps://myurl.com/#/foo/bar
我可以看到打印被调用了多次。
/
/foo
/foo/bar
我有一个问题,因为我想进入bar
路径,但它被输入foo
反而。
有什么想法我应该如何进行?
情况变得更糟。将 initalRoute 设置为/home/1/2/3/4/5
onGenerateRoute 将被调用 7 次。
你可以通过以下方法让它变得不那么可怕:
MaterialApp app;
app = MaterialApp(
onGenerateInitialRoutes: (initialRoute)=>[app.onGenerateRoute(RouteSettings(name:initialRoute))],
initialRoute: initial,
onGenerateRoute: app.onGenerateRoute);
这可以避免您多次调用 Route 的 initState 以及路径中每个“/”一次的 onGenerateRoute 。但是,如果您在浏览器栏中提供路径,仍然会调用 onGenerateRoute 两次。
我已经提交了错误报告:https://github.com/flutter/flutter/issues/71786 https://github.com/flutter/flutter/issues/71786
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)