在Flutter中使用go_router包时,是否可以使用“extra”参数来传递一些数据并使其与深度链接一起使用?

问题描述 投票:0回答:1

我在旧文档中看到,使用“额外”参数将数据传递到另一个页面不适用于深度链接。

我在当前文档中看不到这一点(请查看页面底部的“使用额外内容”部分)。

是否已修改?现在可以在深度链接中使用“额外”参数吗?

我没有尝试这两种实现来看看哪一种有效。我先发制人地问这个问题是为了在处理这项工作之前获得一些线索。

flutter deep-linking flutter-go-router
1个回答
0
投票

额外的对象被传递到当前路由之外。通过深层链接访问目的地时,您的应用程序无法知道该对象是什么。

如果您访问 go_router_builder 文档,在

Extra parameter
部分,他们确实提到:

$extra 参数仍然在位置之外传递,仍然会破坏动态和深层链接(包括浏览器后退按钮),并且在针对 Flutter Web 时仍然不推荐。

如果您希望您的应用程序支持深度链接,则不应依赖额外的参数。相反,将标识符传递给路线

/things/:id

现在该路由的责任是弄清楚如何获取带有 id 的数据,而不是从额外的参数中获取数据。

© www.soinside.com 2019 - 2024. All rights reserved.