项目结构与 pubspec.yaml:先把目录放对

理解 lib、assets、android、ios、web、pubspec.yaml 的职责,避免项目越写越乱。

项目结构pubspec

默认目录怎么看

Flutter 项目创建后,核心业务代码通常放在 lib/。Android、iOS、Web、macOS 等目录是平台壳,除非配置权限、签名、启动图标、原生插件,一般不要频繁改。

推荐目录结构

lib/
  main.dart
  app.dart
  routes/
  pages/
  widgets/
  models/
  services/
  stores/
  utils/
  theme/
assets/
  images/
  icons/
  fonts/

pubspec.yaml 管什么

pubspec.yaml 是项目依赖和资源声明文件。新增图片、字体、第三方包都要在这里维护。缩进必须规范,否则会出现资源找不到或解析失败。

dependencies:
  flutter:
    sdk: flutter
  http: ^1.2.0

flutter:
  assets:
    - assets/images/
  fonts:
    - family: Inter
      fonts:
        - asset: assets/fonts/Inter-Regular.ttf

单人项目的实用原则

  • 页面放 pages,可复用组件放 widgets
  • 接口请求放 services,不要直接写在页面 build 里。
  • 路由集中管理,避免页面之间到处硬编码路径。
  • 主题、颜色、字号统一放 theme,后期改版更轻松。

官方参考