解决什么问题:不再被路由黑盒卡脖子
做 Flutter 应用,路由导航是绕不过去的一环。多数人起步时只会调 push 和 pop,页面一多、一嵌套,就会撞上状态丢失、转场闪烁、返回拦截失效这类难缠问题。这门课把重点放在源码层面,带你看清 Navigator 组件、Overlay 机制和 Route 体系到底怎么协同工作。它解决的不是基础语法,而是你在实际项目里遇到页面跳转混乱、路由栈管理失控时,能从底层原理找到根因,而不是靠反复试错碰运气。
适合什么基础与建议先看哪几块
这套资料不适合零基础。你需要写过几个 Flutter 界面,熟悉 Widget 构建逻辑,能顺畅使用基础路由跳转。如果你连 Dart 语法和基础组件树还没摸清,建议先补齐再来看。有实际项目经验的人收益最大。建议先看 Navigator 组件源码分析、Overlay 与 Navigator 的联系这两块,把路由节点创建和渲染层级的关系理顺。接着直接看 push 操作流程和退栈流程,对照自己项目里的跳转逻辑走一遍。导航 2.0 的部分可以放最后,等命令式路由吃透了,再研究 RouterDelegate 和路由栈维护,理解声明式路由到底优势在哪。
学完能独立做什么与资料怎么配合练习
学完之后,你应该能独立设计复杂场景的路由方案:自定义转场动画、处理深层嵌套页面的返回栈、实现带状态的浮层管理、对接外部链接跳转。遇到路由相关报错,能定位到是 Route 生命周期回调问题还是 Overlay 节点没正确挂载。练习方法上,建议拿一个真实项目改造,先从简单页面跳转开始,逐步加入自定义 Route、拦截返回事件、迁移到导航 2.0 写法。每看一段源码分析,就到项目里打断点跟一遍调用链,对照着看路由栈到底怎么变化。光看资料不动手,源码分析很容易看完就忘。关键是把 push、pop、replace 这几个核心操作的内部流程,在实际调试里走通一遍,才算真正掌握。
路由导航是应用程序必须的一环,从源码到实践完全解读。
课程目录
* 开篇 - 路由导航的重要性
* 源码 | 打开路由导航的黑箱
* 探索 | 移动端导航基本使用
* 源码 | Navigator 组件源码分析
* 探索 | Overlay 和 Navigator 的联系
* 源码 | 初始路由与浮层节点的创建
* 源码 | 分析导航 push 操作流程
* 源码 | 分析路由其他推入方式
* 源码 | 分析路由退栈操作流程
* 探索 | Navigator 与弹出层路由
* 源码 | 路由 Route 体系源码解析
* 源码 | 路由的生命周期与回调分析
* 探索 | 导航 2.0 - 优势与必要性
* 探索 | 导航 2.0 - 从 pages 说起
* 探索 | 导航 2.0 - 路由器代理 RouterDelegate
* 探索 | 导航 2.0 - 路由栈内容的维护
* 探索 | 导航2.0 - 界面状态的保持
* 探索 | 导航 2.0 - 路由界面的树形结构
* 探索 | 导航 2.0 - 局部嵌套导航
* 源码 | 路由器 Router 源码解析
* 源码 | 支持 Web 和分析 GoRouter
* 实战 | GoRouter 在项目中的使用
* 实战 | 多级菜单导航的支持
* 实战 | 自定义路由过渡动画






