Files
Navius/frontend/README.md
T
CNWei e2cc3ac30f feat: 进行功能分区方便后期维护
- 添加导航条目和分类数据模型
- 实现导航卡片网格展示
- 支持点击卡片打开链接
- 添加主题样式(渐变色、卡片阴影)
- 区分系统默认和自定义条目
- 添加分类统计信息"
2026-09-13 22:49:02 +08:00

1.6 KiB
Raw Blame History

Navius 前端(Flutter Web)

导航站前端,使用 Flutter 构建。当前目标平台只有 Web,数据全部来自本地 mock, 不发起网络请求;后端(Rust)尚未接入。

界面基准是仓库根目录的 index3.html:可折叠的层级侧栏 + 居中的顶部控制栏 (折叠按钮 + 搜索框)+ 分组卡片网格 + 右下角圆形回到顶部。

常用命令

flutter pub get            # 拉取依赖
flutter run -d chrome      # 本地运行
flutter analyze            # 静态分析
flutter test               # 单元测试与组件测试
flutter build web          # 构建产物输出到 build/web

目录约定

  • lib/core/:与业务无关的基础设施——主题、尺寸常量、断点计算、打开链接的能力。
  • lib/features/<功能>/:按功能划分,内部再分 data(数据来源与仓库)、domain(模型与规则)、presentation(页面与组件)。
  • test/:目录结构与 lib/ 保持一致。

依赖方向固定为 features/ → core/:core 不引用任何功能代码, 功能之间也不互相引用。

接后端的位置

页面只依赖仓库接口,不关心数据来自 mock 还是 Rust 后端:

  • 首页:lib/features/home/data/home_repository.dart

接入时新增一个实现类,并把 fetchHomeData 的返回类型改成 Future<HomeData> 即可, domain/ 与 presentation/ 基本不需要改动。

完整的目录树、设计令牌映射、响应式规则与实现取舍见 docs/frontend-architecture.md。