我以前在NestJS教程中看到过UsePipes装饰器的这两种语法:
@UsePipes(ValidationPipe)
@UsePipes(new ValidationPipe())
据我所知,ValidationPipe
本身就是一个类,其中new ValidationPipe()
就像所有面向对象语言一样工作,并创建了ValidationPipe的新实例。
我应该用什么?有什么区别呢?
是否有一种用法比另一种更可取?两者都可以正常工作。如果需要向管道传递任何选项,则应该使用new ValidationPipe()
。否则,Nest将看到管道是一个类引用,而不是一个实例,并创建要使用的实例。