問題タブ [graphql]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
2891 参照

mongoose - マングースを使用したGraphQL

私は最近graphQLを使い始めました.mongodbに接続できますが、いくつかの課題があります.今、mongooseに接続しようとしていますが、それは起こっていません.

サンプルコード、マングースとの接続方法を教えてください。ありがとう。

0 投票する
3 に答える
3199 参照

graphql - GraphQL タイプの構造化

API を拡張して GraphQL エンドポイントを含めようとしているときに、問題が発生しました。私が取り組んでいるアプリケーションは、Messages. メッセージには、タイプのコメントを含めることができますMessage。メッセージがコメントの場合、 type の親がありMessageます。単純化すると、スキーマは次のようになります。

このスキーマの問題は、次のようなクエリが許可されることです。

コメントの任意の深いネストを許可したい場合があることに注意してください。その場合、次のクエリを許可する必要があります。

そこで、私の質問は次のとおりです。新しいタイプ (コメント) を、その親がわからない API に導入する必要がありますか? または、この種の望ましくない動作を制限する他の方法はありますか?

また、コメントタイプを使用するfragment messageFields on Messageと、クエリで構文を使用できなくなりますか? おそらく、今こそスキーマにインターフェースを導入する時ではないでしょうか?

タイプ コメントを導入した場合の解決策の提案 (私はこれを試していません):

0 投票する
1 に答える
1226 参照

node.js - Mongoose と ES6 の約束を使用して Graphql で検索を使用して複数のレコードを解決する方法

最近、データベースから条件 (find({'author.id':id}) など) を持つ複数のレコードを検索するときに Graphql を使い始めました。応答 NULL を取得しています。応答は null を示します。

私のコードは次のようになります:

次のようなクエリを渡します。

次のような応答:

これは私の EventType です:

0 投票する
1 に答える
4461 参照

graphql - GraphQL からの応答が単一のアイテムではなく、アイテムの配列であることを RelayJS に理解させる方法

おおよそ次のようなスキーマで実行されているGraphQLサーバーがあります。

1 つのカードだけでなく、複数のカードにもクエリがあることに注意してください。GraphIQl UI を使用して、「query {cards { name }}」のようなクエリを作成すると、予想どおり、カードの配列が返されます。

ただし、同じクエリを作成している RelayContainer がありますが、返される小道具は、結果の配列ではなく、最初の結果にすぎません。

そして、CardList コンポーネントは、次のようにコンテナでセットアップされます。

誰か提案はありますか?これは、GraphQL と Relay に飛び込んで 2 日目なので、私が知っている限りでは非常に基本的な間違いを犯している可能性があります。

0 投票する
0 に答える
104 参照

node.js - GraphQL と ES6 を使用してカスタム メッセージを解決する方法

私は GraphQL と ES6 を新しく使用していますが、「ユーザーは既に存在します」や「電子メールは既に存在します」などのカスタム メッセージを解決するのに問題があります。存在する」)私はこのような応答を得ています

レポート全体ではなく、「メールは既に存在します」というメッセージを印刷したいだけです。それに応じて私に提案してください。ありがとうございました

0 投票する
1 に答える
3286 参照

reactjs - 再帰的なデータとコンポーネント、後でエラーをスローするフェッチ

まず私のgraphqlデータモデルから:

私が使用している唯一のルート(リレールート構成):

リスト コンポーネント:

リスト項目コンポーネント:

ルートリストに対しては問題なく実行されます。しかし、ListItem をクリックして展開するとすぐに、次のエラーが表示されます。

Warning: RelayContainer: Expected prop 'human' supplied 'HumanList' to be data fetched by Relay. This is likely an error unless you are purposely passing in mock data that conforms to the shape of this component's fragment.

私が渡すデータは嘲笑されたものではなく、HumanList コンプに見られるようにリレーによって直接フェッチされるため、あまり意味がありません。

0 投票する
1 に答える
2544 参照

swift - SwiftでAlamofireネットワーキングを使用して解析中にリクエストでコンテンツタイプを送信する方法は?

私はSwiftが初めてです。コンテンツタイプを「application/graphql」としてヘッダーに送信する必要があるgraphql Webサービスを解析したいと考えています。一般に、Objective-C で AFNetworking を使用している場合、コンテンツ タイプを次のように設定できます。

Swift では Alamofire を使用していますが、コンテンツ タイプを設定する方法についてはわかりません。Swift初心者なので、遠慮なく教えてください。

もう 1 つは、graphql サービスが適切な JSON を受け入れないことです。こちらを参照してください。

値をサーバーに投稿する方法を教えてください。文字列を準備することは答えだけですか?(graphqlを誤解していたらごめんなさい)。しかし、躊躇しないでください。あなたの貴重な提案をしてください.Thanks.

0 投票する
2 に答える
4487 参照

graphql - 自己参照データ階層のグラフqlスキーマを作成するにはどうすればよいですか?

タイプがルート フィールド定義で自身を参照するため、これは機能しません。

どうすればいいですか?

0 投票する
1 に答える
1091 参照

javascript - ORM に対するページネーションのリレー接続をどのように定義しますか?

Relayのすべてのドキュメントに目を通しましたが、ORMを使用してRelay接続を構築する方法についての簡単な説明はないようです。すべての例はconnectionFromArray、データをメモリに保存する場合は問題ない方法を使用しているように見えますが、データをデータベースに保存する場合は、接続のページネーションが機能するために必要な情報をどのように提供しますか?

0 投票する
1 に答える
1831 参照

graphql - Relay/graphql で特定のリスト項目の追加情報を取得する

Relay と GraphQL を使用して、ビューアを返すスキーマと、関連付けられたドキュメントの埋め込みリストがあるとします。ルート クエリ (フラグメントで構成される) は、次のようになります。

これにより、ユーザーと、それに関連付けられているすべてのグループのリストを表示できます。

ここで、ユーザーがそのリスト項目をクリックして、その特定のリスト項目に関連付けられたコメントを表示するように展開できるようにしたいとしましょう。これらのコメントを受け取ることができるように、リレー ルートのクエリをどのように再構築すればよいですか? グループ エッジにコメント エッジを追加すると、すべてのグループのコメントが取得されませんか?

または、ルート クエリを変更して特定のグループを検索する必要がありますか?

私の懸念は、特に、これを のコンテキスト内で使用することですrelay。つまり、展開されたリスト アイテム (またはアイテム) のコメントのみをフェッチするルート クエリを効率的に構築するにはどうすればよいでしょうか。また、既に存在するキャッシュされたデータを利用し、ミューテーションを行うときに更新されます。上記の例は、特定の展開されたグループに対して機能する可能性がありますが、すべてのグループ項目のフィールドをフェッチせずに複数のグループを同時に展開する方法がわかりません。