Как сопоставить свойство запроса graphQL с другим свойством ответа?
У меня есть graphQL type
определено в .graphql
файл для первого приложения схемы nestjs. Тип такой:
type address {
id: String
Title: String
Url: String
}
Теперь, используя nestjs, у меня есть функция распознавателя как
@Query('address')
async getAll(): Promise<any> {
return await this.addressService.getAll();
}
Результат от await this.addressService.getAll()
представляет собой массив объектов со свойствами, имеющими _
в них нравится:
[
{
id: 1,
address_title: 'title',
address_url: 'url'
}
]
Я также использую @nestjs/graphql
библиотека для @Query
, @ResolveField
и тому подобное. Моя проблема в том, как я могу сопоставить свойства ответа со свойствами graphql, которые я написал как SDL в.graphql
файл в рамках nestjs? Есть ли способ сопоставить свойства запроса graphql со свойствами результата с помощью nestjs?
Я посмотрел на псевдоним graphql, также упомянутый здесь, но для меня это бесполезно. Любая помощь по этому поводу приветствуется.
1 ответ
Вы можете использовать прямой подход:
@Query('address')
getAll(): Promise<any> {
return this.addressService.getAll().map(this.addressMapper);
}
private addressMapper(address: any): address {
return {id: address.id, Title: address.address_title, Url: address_url};
}
Или использовать NestJS трубы.