我有简单的自定义装饰器:
export const User: () => ParameterDecorator = createParamDecorator(
(data: any, req): UserIdentity => {
const user = getUser(req);
return user;
},
);
Run Code Online (Sandbox Code Playgroud)
现在,我需要验证我们是否有email对象user。
问题是我无法更新当前的装饰器。
我可以扩展我当前的装饰器吗?
基于前一个装饰器创建一个新的装饰器还是创建一个新的装饰器并将其组合?
我有 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)