小编Dmy*_*sak的帖子

Nestjs 扩展/组合装饰器?

我有简单的自定义装饰器:

export const User: () => ParameterDecorator = createParamDecorator(
  (data: any, req): UserIdentity => {
    const user = getUser(req);
    return user;
  },
); 
Run Code Online (Sandbox Code Playgroud)

现在,我需要验证我们是否有email对象user

问题是我无法更新当前的装饰器。

我可以扩展我当前的装饰器吗?

基于前一个装饰器创建一个新的装饰器还是创建一个新的装饰器并将其组合?

decorator node.js typescript nestjs

7
推荐指数
1
解决办法
9011
查看次数

当条件时 Joi 循环依赖错误

我有 3 个查询参数经度纬度半径

我有 3 个可能的条件:

  • 半径- 空,经度纬度,有一些值
  • 所有 3 个参数都有值
  • 所有 3 个参数为空

在所有其他情况下发送验证错误。

例如

经度=3.12 - 错误

纬度=2.12,半径=3.2 - 误差

经度=12.12,纬度=2.12 - 好的

我的架构看起来像这样:

const schema = Joi.object().keys({
    longitude: Joi.number().optional().error(new Error('LBL_BAD_LONGITUDE'))
      .when('latitude', { is: Joi.exist(), then: Joi.number().required() })
      .when('radius', { is: Joi.exist(), then: Joi.number().required() }),
    latitude: Joi.number().optional().error(new Error('LBL_BAD_LATITUDE'))
      .when('longitude', { is: Joi.exist(), then: Joi.number().required() })
      .when('radius', { is: Joi.exist(), then: …
Run Code Online (Sandbox Code Playgroud)

validation circular-dependency node.js joi

2
推荐指数
1
解决办法
1476
查看次数