nestjs学习day1

95 阅读1分钟

nestjs学习day01

nestjs 脚手架安装

npm i -g @nestjs/cli

创建项目

nest new demo

nest命令

  • 查看命令 nest --help
  • 生成控制器 nest g co demo
  • 生成module nest g mo demo
  • 生成service nest g s demo
  • 生成一套模版 nest g resource user

版本控制

  • main.ts中加入
app.enableVersioning({
  type:VersioningType.URI
})
  • constroller中加入
@Controller({path:'user',version:"1"})//1.加在控制器上

@Get()//2.加在具体的方法上
@Version('1')
findAll() {
  return this.userService.findAll();
}

请求装饰器

@Get()
// @Version('1')
// @Request
findAll(@Query() req) {
  console.log(req);
  return {
    code: 200,
    msg:req.name
  }
}

@Post()
//@Request()
create(@Body() body) {
  return {
    code:200,
    msg:body
  }
}

@Get(':id')
// @Param('id') id: string
@HttpCode(500)
findOne(@Request() req, @Headers() headers) {
  return {
    code: 200,
    msg: req.params,
    headers: headers
  };
}

@Delete(':id')
remove(@Param('id') id: string) {
  return this.userService.remove(+id);
}

@Patch(':id')
update(@Param('id') id: string, @Body() updateUserDto: UpdateUserDto) {
  return this.userService.update(+id, updateUserDto);
}