Nest.js 经典题 附加答案
以下是针对Nest.js经典题目的解答,并附上代码示例:
// Nest.js 控制器示例
import { Controller, Get, Post, Body, Param, Delete, Put } from '@nestjs/common';
import { CreateCatDto } from './dto/create-cat.dto'; // 假设这是DTO文件
import { CatService } from './cat.service';
import { Cat } from './interfaces/cat.interface'; // 假设这是接口文件
@Controller('cats')
export class CatController {
constructor(private readonly catService: CatService) {}
@Post()
async create(@Body() createCatDto: CreateCatDto) {
this.catService.create(createCatDto);
}
@Get()
async findAll(): Promise<Cat[]> {
return this.catService.findAll();
}
@Get(':id')
async findOne(@Param('id') id: string) {
return this.catService.findOne(id);
}
@Put(':id')
async update(@Param('id') id: string, @Body() updateCatDto: CreateCatDto) {
this.catService.update(id, updateCatDto);
}
@Delete(':id')
async remove(@Param('id') id: string) {
this.catService.remove(id);
}
}
在这个示例中,我们定义了一个控制器CatController
,它处理与猫的相关HTTP请求。我们使用了Nest.js的装饰器,如@Controller
、@Get
、@Post
等,来标记路由和对应的处理函数。每个函数都使用了catService
来实现具体的业务逻辑。这个示例展示了如何在Nest.js中创建一个简单的CRUD控制器。
评论已关闭