在 Flutter SDUI 中处理导航的最佳实践:框架导航与自定义导航堆栈

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

我正在使用 Flutter 开发 SDUI。我有一个与导航相关的主要问题。这个问题并不特定于任何特定框架,但由于我正在使用 Flutter 进行开发,所以我认为提及 Flutter 会很有用。

导航应该如何处理?我们应该使用框架级导航系统,还是应该使用堆栈实现自己的导航系统?

框架导航:如果我们使用框架级导航系统,我们只能使用在构建生成期间指定的预定义路由,例如(/homepage、/profile、/login 等)。如果我想在没有应用程序发布的情况下显示新路线,这可能是不可能的。

自己的导航:如果我们创建自己的导航系统,我们需要管理许多方面,类似于 Flutter、KMM 或 Jetpack Compose 处理的内容。我们需要实现正确的堆栈导航。在这种情况下,所有内容都将呈现在同一页面上。例如,如果我渲染主页,然后导航到个人资料页面,我们会将个人资料页面 JSON 推送到主页上,或者定义一些常规页面,例如 /homepage、/profile 等。

请找到这个例子。

自己的导航SDUI演示

目前,我们可以使用 JSON 从服务器生成 UI,并且对于导航,我们使用 Flutter 的导航系统。

我需要你的帮助。我该如何前进?

android ios flutter mobile kotlin-multiplatform
1个回答
0
投票

GoRouter 包就是您所需要的。

go_router

Flutter 的声明式路由包,使用 Router API 提供方便的、基于 url 的 API,用于在不同屏幕之间导航。您可以定义 URL 模式、使用 URL 进行导航、处理深层链接以及许多其他与导航相关的场景。

链接: https://pub.dev/packages/go_router

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