demo:
import { Controller, Get } from '@nestjs/common';
@Controller('cats')
export class CatsController {
@Get('a')
findAll(): string {
return 'This action returns all cats';
}
}当请求 /cats/a 框架是如何通过装饰器定位到 findAll()这个方法的呢?他的原理是什么?
demo:
import { Controller, Get } from '@nestjs/common';
@Controller('cats')
export class CatsController {
@Get('a')
findAll(): string {
return 'This action returns all cats';
}
}当请求 /cats/a 框架是如何通过装饰器定位到 findAll()这个方法的呢?他的原理是什么?
3 回答956 阅读✓ 已解决
2 回答949 阅读✓ 已解决
3 回答923 阅读✓ 已解决
3 回答961 阅读
3 回答954 阅读
1 回答502 阅读✓ 已解决
4 回答794 阅读
@Controller这个东西在JS中叫装饰器,关于它的语法你可以去搜搜看,原理上跟函数差不太多,也就是在CatsController之上额外多加了一些逻辑,这些逻辑你不需要写在这个class里,好奇怎么实现的最佳路径是直接看源码,装饰器作用看下文档然后再去找源码部分就能大概理解了,其实就是通过这么一层包装把cats、a这样的路径记下来有点上面这样的味道,源码并非这样,只是大概描述下逻辑概念,总之就是把路径记到
controller上,之后再取出来匹配