私は、Relay Schemaを使用してGraphQL(Graphic.coolでホスト)を使用してReact Nativeアプリケーションを構築しています。 トップレベルのコンポーネントにQueryRendererがあり、フラグメントを使ってプレゼンテーションコンポーネントのデータを取得していますが、正常に動作しています。EnumValuesのイントロスペクションクエリが反応コンポーネント内のGraphQLフラグメントとして返されます
私の問題:可能な列挙型の値をリストとしてフェッチし、スキーマ内の特定のフィールドに対してフェッチし、これらのフラグメントをフェッチするために、イントロスペクションクエリを実行します。 断片と私の現在のクエリ:
query ReportingContainerQuery {
viewer {
...MainList_items
...
}
}
MainList_itemsフラグメント:
fragment AnimalList_items on Viewer {
allAnimalCategories {
edges {
node{
id
...AnimalListRow_item
}
}
}
}
は、私が(:https://www.graph.cool/forum/t/how-to-access-the-possible-values-of-an-enum-type-created-inside-the-console/23/2を使用して):イントロスペクションを通じてenumValuesをフェッチするために働いて、次のクエリを得た
query {
__type(name: "JOURNAL_ENTRY_GENDER") {
enumValues {
name
}
}
}
しかし、私はトップレベルのクエリに追加できるフラグメントを作成する方法を見つけることができないようです。 私は、イントロスペクションをトップレベルのクエリに直接貼り付けることができますが、それはリレーフレームワークに対して、私が理解している限り、それはうまくいくでしょう。このようにすると、結果を小道具として明示的に渡す必要があります。プレゼンテーションコンポーネントに必要なものを指定させ、それをフラグメントとして最上位レベルのQueryRendererに渡し、リレーフレームワークが暗黙的に結果をコンポーネントに問い合わせます。