私はRelayとGraphqlを使用していますが、接続中の1つのオブジェクトにもっと多くのフィールドをフェッチする方法がわかりません。リレー接続の要素の詳細
我々は視聴者のタスクのリストを移入するには、次の問合せがあるとします。
viewer {
id
tasks(first:10) {
edges {
node {
id
name
}
}
}
}
ユーザーがリスト内のいずれかを選択した場合、私が選択した1の複数のフィールドを取得したいです。ここで
が私の考えです:- 私は「タスク」と呼ばれ、それは、入力としてIDを取り、ただ一つのタスクを返しているビューアオブジェクトに新しいフィールド/メソッドを実装します。この回答のように:https://stackoverflow.com/a/40712653/5820184
- 欠落しているデータをフェッチするには、ノードルートクエリを使用します。 (私はリレーでこれを行う方法がわかりません。ルートコンテナを両方のクエリに依存させますか?)
- 接続にIDの入力を受け取り、その1つのタスクだけを返します。
今は、1つの要素をグラフに取り込むために「関数」を追加することによって、「グラフ」モデル全体の考え方に反するようです。
2番は、内部リレーのように見えるので、ノードルートクエリを使用することは良い方法であるとは思えません。
リストビューに影響を与える可能性のあるリストをフィルタリングするものなので、数字3は実行可能な解決策であるかどうかわかりません。
UPDATE
我々は、入力ANがリストから1つの要素を返すようにIDを取り、各接続のためのフィールドを作ってしまいました。これは、Graphcool、GitHubなどのエンドポイントでのやり方に触発されました。正しい方向に私を指してくれてありがとう。
が見えますwww.graph.cool/docs/reference/relay-api/one-node-ga4chied8m) – idkjs
ありがとう、ちょうどリンクを更新しました:) – marktani