以下の内容はhttps://uga-box.hatenablog.com/entry/2024/07/02/000000より取得しました。


【GraphQL】UNIONで型が競合するフィールドをどうするか

UNION型に対してクエリする時、フィールド名が一緒だが型が違うため、競合エラーを起こした

{
  firstSearchResult {
    ... on Person {
      value {
         name
      }
    }
    ... on Photo {
      value {
         name
      }
    }
  }
}
{
   ...
   "message": "Fields \"value\" conflict because they return conflicting types xxx and [xxx]. Use different aliases on the fields to fetch both if this was intentional.",
   ...
}

これを防ぐために、GraphQLエイリアスを使うことを知った

Queries and Mutations | GraphQL

aliasName: fieldNameの形にすればよく

次のように書き直すことで競合を防いで、それぞれpersonphotoでフィールドを分けることができるようになった

{
  firstSearchResult {
    ... on Person {
      person: value {
         name
      }
    }
    ... on Photo {
      photo: value {
         name
      }
    }
  }
}



以上の内容はhttps://uga-box.hatenablog.com/entry/2024/07/02/000000より取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14