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
是否可以直接 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