GoProviderRoute 和 ShellProviderRoute 簡化了在 Flutter 應用中將提供者範圍限定至特定路由。此套件透過允許開發人員在路由層級管理狀態與相依性,增強了路由功能,確保在導航時提供者能正確建立與釋放。它與 GoRouter 完全整合,提供一種乾淨的方式來為每個路由隔離狀態,或使用殼路由在巢狀路由之間共用狀態。非常適合需要對提供者生命週期進行細緻控制的複雜導航結構應用。
適用情境
- 按路由的作用域狀態管理
- 透過外殼路由實現嵌套路由狀態共享
- 簡化複雜導航流程中的提供者設定
- 管理路由特定的依賴項
- 減少基於路由的狀態處理中的樣板程式碼
主要特色
- 帶有 GoProviderRoute 的路由範圍提供程式
- Shell 路由對共享狀態的支援
- 路由退出時自動釋放提供者
- 與 GoRouter 的無縫整合
- 最小設定需求
適合對象
- 具有深度導航層級的應用程式
- 使用 GoRouter 進行路由的開發者
- 需要隔離路由狀態的項目
- 尋求更乾淨的供應商管理的團隊
- 複雜表單或多步驟工作流程
使用建議
- 需要 GoRouter 才能實現完整功能
- 僅限於基於 GoRouter 的導航中使用
- 可能增加簡單應用的複雜性
- 提供者範圍必須仔細規劃
- 不適用於全域應用範圍的狀態,除非使用 shell 路由