簡體   English   中英

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

[英]How to manage Flutter web URL routes using the GetX package?

我正在為 iOS、Android 和 Web 開發 Flutter 應用程序。 我決定使用 GetX 包,因為它使事情變得更容易,但我對如何處理 Web URL/地址欄導航感到困惑。 例如,我的一個屏幕顯示了有關事件的詳細信息。 通過應用程序在那里導航工作正常,但是如果我在瀏覽器中粘貼指向事件的鏈接怎么辦? 我的 GetX EventController 管理一個_selectedEvent事件,這就是我知道要顯示詳細信息的事件的方式。 但是,如果我使用 URL 鏈接,我的_selectedEvent事件永遠不會更新,詳細信息屏幕也不會顯示正確的事件。

目前,當用戶單擊事件以導航到詳細信息屏幕時,我在主頁中設置了_selectedEvent 但是,如果用戶通過瀏覽器中的地址欄導航,我無法更新_selectedEvent 我不認為我可以在 GetX 中使用任何狀態管理器,因為我沒有更新小部件,所以我不確定在哪里更新我的_selectedEvent

我應該如何處理地址欄導航?

希望我的解釋有意義。 我仍在努力學習 Flutter。

嘗試使用動態URL鏈接所描述的getX命名路由在這里 例如,對於特定事件,您可以有一個類似“https://.../events?id=1234”的 URL,您可以在控制器中使用 Get.parameters['id'] 獲取 ID 並顯示該事件基於此 ID 的詳細信息。

所以如果其他人偶然發現這個問題,我找到了一個解決方案。 這個鏈接有一個很好的、易於遵循的描述和使用 Flutter 路由和導航的實現。 它沒有專門使用 GetX 來進行路由,但我只是使用了GetPageRoute而不是MaterialPageRoute和 GetX 導航而不是 Flutter Navigator以仍然受益於 GetX 控制器和綁定。 我的瀏覽器后退按鈕仍然有問題,但我認為這是一個 Flutter 問題,不是我的特定項目的問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM