Flutter Web:读取和写入查询字符串值

Flutter Web: Reading and writing query string values

是否可以直接 read/write 查询字符串,而不是将命名路由推送到根导航器?

我们正在开发一款使用内部内容区域的桌面风格应用。 我们希望支持 Web 上的深度链接,但不依赖我们的根导航器来更改页面,因此常规方法不适合。(我们使用 IndexedStack + 'TabMenu' 代替)

我们真正需要的只是一些简单的 API:

Window.setRoute("/foo/bar")
String route = Window.getRoute()
Window.onRouteChanged = _handleRouteChanged;

从那里我们可以轻松地处理代码中的所有内容。这可能吗?

来自 https://github.com/flutter/flutter/issues/35261#issuecomment-507610298
您可以通过使用 dart:js 包访问 window.location.href 来获得 query parameters

import 'dart:js' as js;
...
var uri = Uri.tryParse(js.context['location']['href']);
if (uri != null) return uri.queryParameters;

然后直接改window.location.href