Appearance
状态管理、路由、架构
模块目标
建立 Compose / Flutter / Vue 在状态管理、路由、页面恢复、业务状态分层上的对照心智。
本模块要回答的问题
- UI state 和业务 state 到底怎么分?
- one-shot event 为什么总是容易写乱?
- Flutter 为什么不能只会 setState?
- Riverpod / Provider / Bloc / GetX 各自适合什么?
- Vue 的 Pinia / vue-router 和 Flutter / Compose 的对应关系是什么?
子主题清单
01. Compose 状态模型
- [x] Compose / Flutter / Vue 状态管理对照
- [x] Android / Compose:ViewModel(已在主文档中对照)
- [x] StateFlow / SharedFlow(已在主文档中对照)
- [x] UI state / one-shot event 区分(已在主文档中对照)
- [x] Compose 单向数据流(已在主文档中对照)
- [x] Navigation Compose(暂保留在路由专题展开)
02. Flutter 状态管理
- [x] Riverpod / Provider / Bloc / GetX 对比
- [x] Flutter:setState 适用边界(已在主文档中对照)
- [x] Riverpod 主方案(已并入主文档)
- [x] Provider / Bloc / GetX 项目辨析(已并入主文档)
- [x] go_router / Navigator 体系
- [x] 页面状态、业务状态、缓存状态分层(已在主文档中对照)
03. Vue 状态与路由
- [ ] Vue:ref / reactive
- [ ] Pinia
- [ ] vue-router
- [ ] 页面级缓存
- [ ] H5 与 App 宿主配合
04. 跨端对照
- [ ] Compose / Flutter / Vue 状态管理对照表
推荐复习顺序
- Android / Compose 状态流转
- Flutter 状态管理选型
- Vue / Web 状态与路由
- 最后补跨端架构对照
对应 labs 入口
建议后续优先补:
labs/flutter/state-routing-architecture/labs/vue/state-routing-architecture/labs/android/state-routing-architecture/
备注
这个模块应尽量通过最小 demo 形成对照,不要只停留在概念表述。