0

我在文件中为 nestjs 模式第一个应用程序type定义了一个 graphQL。.graphql类型是:

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在 nestjs 框架的文件中作为 SDL 编写的 graphql 属性?有什么方法可以使用nestjs将graphql查询属性映射到结果属性?

我查看了 graphql 别名,这里也提到了,但这对我没有用。对此的任何帮助都将受到高度赞赏。

4

1 回答 1

0

您可以使用直接方法:

@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管道

于 2020-06-03T10:57:12.777 回答