Nest.js - 目录结构

创建项目完成后,项目中的src目录结构比较单一,需要做出调整。

初始目录

arduino 复制代码
-|src
--| app.controller.spec.ts // 控制器的单元测试(目前先忽略)。
--| app.controller.ts // 一个具有单一路由的基础控制器
--| app.module.ts // 应用的根模块
--| app.service.ts // 一个具有单一方法的基础服务
--| main.ts // 应用的入口文件,使用核心函数 NestFactory 创建 Nest 应用实例。

当前目录

将目录结构作出以下划分:

diff 复制代码
-| src
--| main.ts
--| app.module.ts
--| module // 细分每个模块
---| test 
----| test.controller.spec.ts
----| test.controller.ts
----| test.module.ts
----| test.serviec.ts
--| config // 配置文件等
--| xxx 

具体代码

如下为项目划分的具体代码:

main.ts

javascript 复制代码
import { NestFactory } from '@nestjs/core';
import { AppModule } from './app.module';
​
async function bootstrap() {
  const app = await NestFactory.create(AppModule);
  await app.listen(process.env.PORT ?? 3000);
}
​
bootstrap();

app.module.ts

typescript 复制代码
import { Module } from '@nestjs/common';
import { TestModule } from './module/test/test.module';
​
@Module({
  // 将模块引入
  imports: [TestModule],
})
export class AppModule {}

test目录代码

typescript 复制代码
// test.controller.ts
import { Controller, Get } from '@nestjs/common';
import { TestService } from './test.service';
​
@Controller()
export class TestController {
  constructor(private readonly TestService: TestService) {}
​
  @Get()
  getHello(): string {
    return this.TestService.getHello();
  }
}
typescript 复制代码
// test.module.ts
import { Module } from '@nestjs/common';
import { TestController } from './test.controller';
import { TestService } from './test.service';
​
@Module({
  controllers: [TestController],
  providers: [TestService],
})
export class TestModule {}
kotlin 复制代码
// test.service.ts
import { Injectable } from '@nestjs/common';
​
@Injectable()
export class TestService {
  getHello(): string {
    return 'Hello World!';
  }
}
相关推荐
全栈项目管理程序猿4 小时前
ArcGIS JS 基础教程(29):CSVLayer 表格点位图层
前端·javascript
骑着蜗牛撵大象3275 小时前
豆包 Seed 驱动的记账智能体:从拍票抽取到月报生成的全链路落地记录
java·前端·javascript·结构化输出·豆包seed·多模态识别·记账系统
溪语流沙5 小时前
【Web全栈进阶】前端世界观:现代工具链与框架为什么存在
前端·javascript·vue.js
kyriewen5 小时前
我逐个测了 JSON.stringify 的 7 个坑:第 1 个就在丢数据
前端·javascript·程序员
song5016 小时前
React Native for OpenHarmony 实战:三方库 react-native-ratings 的鸿蒙化适配指南
javascript·react native·react.js·分类·harmonyos
朱包林6 小时前
iTerm2终端配置指南
linux·javascript·python·云原生·容器·kubernetes·云计算
谢亮_vipxieliang6 小时前
JavaScript this 指向完全指南:调用位置决定一切
开发语言·javascript·ecmascript
WeiXin_DZbishe7 小时前
基于Node.js的马拉松赛事管理系统的设计与实现-计算机毕设 附源码【课程设计】90211
java·javascript·vue.js·python·php·课程设计
西西学代码7 小时前
像素和颜色之间的转换(Flutter)
前端·javascript·flutter
时间海8718 小时前
对象键清洗之前,先拦住重名
javascript·后端