Я использую модуль nest js swagger и хочу создать документацию по API. Для конечных точек, полагающихся на тело запроса, я могу назначить класс DTO документам, таким как
@ApiBody({ type: CreateUserDTO })
Некоторые конечные точки также полагаются на параметры или запросы запроса. Для параметров я бы сделал что-то вроде
@ApiParam({ type: GetUserByIdDTO })
(я знаю, что это плохой пример, потому что нет необходимости в DTO для идентификатора пользователя, но давайте предположим, что вы хотите проверить свои параметры с помощью класса DTO, используя class-validator)
но я получаю эту ошибку
Аргумент типа '{type: typeof GetUserByIdDTO; } 'нельзя назначить параметру типа' ApiParamOptions '. Свойство 'name' отсутствует в типе '{type: typeof GetUserByIdDTO; } 'но требуется в типе' ApiParamMetadata '.
Для запросов я бы сделал что-то вроде
@ApiQuery({ type: GetUsersDTO })
и получил бы эту ошибку
Аргумент type '{type: typeof GetUsersDTO; } 'нельзя назначить параметру типа' ApiQueryOptions '. Свойство 'name' отсутствует в типе '{type: typeof GetUsersDTO; } 'но требуется для типа' ApiQueryMetadata '.
Таким образом, кажется, что декоратор APIBody
работает нормально, но как я могу исправить мои декораторы APIParam
и APIQuery
?