路由和导航

Flutter 有一个命令式路由机制,即 Navigator 组件,还有一个更为惯用的声明式路由机制(类似于 widget 中使用的 build 方法),即 Router 组件。

这两个系统可以一起使用(事实上,声明式系统是使用命令式系统构建的)。

对于小型应用程序来说,通常只需通过 MaterialApp 构造函数中的 MaterialApp.routes 属性,加以使用 Navigator API,就可以很好地提供服务。

要了解 Navigator 及其命令式 API,参阅 Flutter 教程 中的 Navigator 教程Navigator API 文档。

通过 MaterialApp.router 构造函数,Router API 可以更好地为复杂应用程序服务。它需要更多的前期工作来描述如何解析应用程序的复杂路由,以及如何将应用程序的状态映射到页面集合,但从长远的角度来看会使路由的控制更具表现力。

要了解 Router 和声明式方法,参阅 学习 Flutter 的新导航和路由系统Router API 文档。