如何使用 GetX 包管理 Flutter Web URL 路由?

Wal*_*lie 5 flutter flutter-web flutter-getx

我正在开发适用于 iOS、Android 和 Web 的 Flutter 应用程序。我决定使用 GetX 包,因为它使事情变得更容易,但我对如何处理 Web URL/地址栏导航感到困惑。例如,我的一个屏幕显示有关事件的详细信息。通过应用程序导航到那里效果很好,但是如果我在浏览器中粘贴到该事件的链接会怎么样?我的 GetX EventController 管理一个_selectedEvent事件,这就是我知道要显示哪个事件的详细信息的方式。但是,如果我使用 URL 链接,我的_selectedEvent活动永远不会更新,详细信息屏幕也不会显示正确的活动。

目前,我在主页中设置_selectedEvent当用户单击事件时导航到详细信息屏幕。但是,如果用户通过浏览器中的地址栏导航,我无法更新_selectedEvent. 我认为我无法使用 GetX 中的任何状态管理器,因为我没有更新小部件,所以我不确定在哪里更新我的_selectedEvent.

我应该如何处理地址栏导航?

希望我的解释有意义。我还在努力学习Flutter。

Wal*_*lie 0

因此,如果其他人偶然发现这个问题,我找到了一个解决方案。此链接对使用 Flutter 进行路由和导航进行了良好且易于理解的描述和实现。它没有专门使用 GetX 来进行路由,但我只是使用GetPageRouteGetXMaterialPageRoute导航而不是 Flutter 来Navigator仍然受益于 GetX 控制器和绑定。我仍然遇到浏览器后退按钮的问题,但我认为这是 Flutter 的问题,而不是我的特定项目的问题。