在打字稿中构建验证参数装饰器

时间:2020-10-09 17:20:36

标签: node.js typescript nestjs

我读了文档,去过那里。仍然不知道如何以一种常识的方式来编写我需要的装饰器。

简介:获得了在验证层之前执行的拦截器。这只是意味着无效数据可以进入拦截器并破坏应用程序。为避免这种情况,我想在某些方法上使用装饰器,并更准确地说明此类方法的参数。

public async getUserById(@IsIntNumber() userId: number): Promise<UserEntity>
{
    // method logic
}

这里@IsIntNumber()是用于验证userId参数的自定义装饰器。

事实上,我希望在应用程序中有一个我的小图书馆,里面藏着一堆可以用于不同参数的验证装饰器。

是否有一些合法的方法可以做到这一点而又不流血过多和流泪呢?

我知道这是一个难题。

他们在文档中说:

@required装饰器添加标记该参数的元数据条目 按要求。然后@validate装饰器包装现有的问候 函数中的方法,该方法在调用 原始方法。

意思是我必须将所有验证逻辑打包到该validate函数中,还是什么?真的吗?

这是否意味着我们在TS中没有足够的参数修饰符?如果我了解这项权利,那么这些绝对是绝对无法使用的。

0 个答案:

没有答案