NestJS 项目目录结构设计与最佳实践

青禾大神
学习笔记
发布于 2025-04-28
17 阅读
23 评论
2.4k 点赞
#NodeJs

目录结构

js 复制代码
src/
├── common/            # 全局通用模块
│   ├── filters/       # 异常过滤器
│   ├── interceptors/  # 拦截器
│   ├── guards/        # 守卫
│   ├── decorators/    # 自定义装饰器
│   └── constants/     # 全局常量
├── config/            # 配置文件
│   └── app.config.ts  # 应用配置
├── modules/           # 业务模块目录
│   ├── user/          # 用户模块
│   │   ├── dto/       # 数据传输对象
│   │   ├── entities/  # 数据库实体(TypeORM)
│   │   ├── interfaces/# 类型接口
│   │   ├── schemas/   # Mongoose Schema(可选)
│   │   ├── user.controller.ts
│   │   ├── user.module.ts
│   │   ├── user.service.ts
│   │   └── user.repository.ts # 数据库操作
│   ├── order/         # 订单模块(结构同上)
│   └── product/       # 商品模块(结构同上)
├── main.ts            # 应用入口
└── app.module.ts      # 根模块
分层清晰
ts 复制代码
// 用户模块典型结构
user/
├── dto/
│   ├── create-user.dto.ts
│   └── update-user.dto.ts
├── entities/
│   └── user.entity.ts
├── user.controller.ts    // 处理HTTP请求
├── user.service.ts       // 业务逻辑
├── user.repository.ts    // 数据库操作
└── user.module.ts        // 模块聚合

青禾大神

Vue技术专家 | 5年开发经验

专注前端技术领域,Vue生态贡献者,定期分享前沿技术文章。

评论 (128)

前端小白

这篇文章讲得太好了,解决了我很多疑惑!

资深开发者

对依赖收集部分的讲解很深入,期待更多原理分析文章!

相关推荐

Vue3组合式API最佳实践

3.2k阅读 · 86评论

Pinia状态管理深度解析

2.5k阅读 · 45评论