問題タブ [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 投票する
1 に答える
6755 参照

javascript - GraphQL/Relay スキーマ「フィールドを照会できません...」

graphql/relay のいくつかのフィールドのクエリで問題が発生しています。以下のスキーマでコースの「courseName」フィールドを照会しようとしています。

たとえば、ユーザーにクエリを実行すると、次のようになります。

{ ユーザー(id:1){ファーストネーム,ラストネーム}}

それは機能し、正しい応答を返します。

ここに私のスキーマがあります:

ここに私のdatabase.jsがあります:

クエリを実行しようとすると:

{ ユーザー (id:1){コース{コース名}} }

エラーが表示されます:

「'CourseConnection' のフィールド 'courseName' をクエリできません」

接続に問題があるようです。また、このクエリを cURL でテストしています。反応/リレーに移行する前にスキーマをテストしたいので。

私は何が欠けていますか?ありがとうございました。

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

graphql - GraphQL でクエリとミューテーションに名前を付けるポイントは何ですか?

素朴な質問で申し訳ありませんが、私は答えを探しましたが、見つけたのは漠然としているか、意味がありません。GraphQL 仕様から次の例を取り上げます。

このクエリに名前を付けるポイントは何getZuckProfileですか? 複数の操作を含む GraphQL ドキュメントについて見たことがあります。ネーミングクエリは返されるデータに何らかの影響を与えますか? これを自分でテストしたいのですが、簡単に実験できるサーバーとデータセットがありません。しかし、どこかのドキュメントの何かがこれを明確にすることができれば良いでしょう.リクエストごとに 1 つの匿名クエリを送信する場合、自分が持っていないクエリに名前を付けると、どのようなメリットがありますか?

また、変異に関しては、仕様に次のように記載されています。

この場合、setName2 回指定しています。なんで?これらの 1 つがミューテーションのフィールド名であり、それをバックエンド スキーマに一致させるために必要であることがわかりましたが、そうではない理由は次のとおりです。

同じ名前を 2 回指定すると、どのような利点がありますか? 最初のものは恣意的である可能性が高いと思いますが、なぜノイズではないのでしょうか? 明らかな何かが欠けている必要がありますが、これまでに見つけたものは何も解決していません。

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

graphql - サブセクションのない GraphQL ミューテーション

サブセクションなしでgraphqlミューテーションリクエストを送信したい

そして私は得ています

{ id } をリクエストに追加するとうまくいきますが、私はしたくありません

スキーマコードも

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

javascript - RelayでReact状態を更新する

Relay では、通常どおり React コンポーネントを作成します。

コンポーネントは Relay コンテナにラップされます。

Relay コンテナは、GraphQL を使用してデータを取得し、状態を更新します。これは高次のコンポーネントであり、この状態は props としてその子に渡されます。

これは、Redux のようなフラックス実装と互換性がありません (または互換性がないように見えます)。Redux には単一のグローバル状態オブジェクトがあり、小道具をプレゼンテーション コンポーネントに渡す高次コンポーネントもあります。そのため、Redux ストアと Relay コンテナーの両方が現在どのように共存できるかわかりません。

では、データベースに由来しない状態をどのように更新すればよいのでしょうか? この状態は Relay でどのように管理されるのでしょうか?

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

node.js - Node.js で複数のデータ ソースから API をラップする

現在、Node.js に基づく新しいプロジェクトのミドルウェア レイヤーを開発しています。「純粋なバックエンド API (RESTful API)」といくつかのデータベース (MongoDB、MySQL など) の両方からデータを取得し、それらのデータをいくつかの条件付きフィルターと組み合わせて、すべてのクライアントに新しい API として公開する必要があります。

現時点では、これらのデータ ゲッターを Promises としてラップし、必要なデータをフィルター処理するだけです。しかし、その要件に対する適切な解決策があるのではないかと思います。

いくつかのアプローチの候補を次に示します。

  • LoopBack : LoopBack フレームワークは、複数のデータ ソースを超えてモデルを定義できます。ただし、LoopBack は「モデル レベル」の複数のデータ ソースのみをサポートし、「フィールド レベル」のデータ ソースはサポートしていないようです。つまり、データベースの一部のフィールドと RESTful API の他のフィールドを使用して特定のモデルを定義できませんでした。

  • GraphQL : 私は GraphQL を初めて使用しますが、GraphQL には RESTful API とデータベースの両方のコネクタがいくつかあるようです。

他のパッケージやライブラリは大歓迎です! 皆さんありがとう!

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

reactjs - 単一のリクエストの解決呼び出しを蓄積する方法は?

サーバーにgraphql requestヒットresolve functionsすると、クエリに応じていくつかの異なるサーバーにジャンプします。selectしかし、時には何十もの小さなリクエスト (基本的には各resolve関数の a)でデータベースをヒットしたくありません。それは実際にはあまりうまくスケーリングしません。

単一のgraphqlリクエストに対してこれらすべての解決呼び出しを蓄積する方法はありますか?最後に魔法をselectかけてデータベースに1つだけを構築し、すべての約束を解決できますか?

解決関数で返すすべての約束を蓄積することで、自分で何かを構築するいくつかの方法を見ることができますが、単一の要求に対するすべての解決関数がいつ呼び出されたかはわかりません。

この問題の解決策はありますか? Facebook はそのシナリオにどのように対処しますか?

ありがとうございました

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

javascript - 取得エラー: タイプ「Query」のフィールド「user」の不明な引数「id」[GraphQL、Relay、React]

リレーでクエリを作成しています。ユーザーデータベースは次のように設定されています。



schema.js ファイルは次のとおりです。


リレー コンテナを次のように作成しました。


しかし、userId でユーザーを取得できず、npm run build コマンドの実行時に次のエラーが発生します。

エラー: タイプ "Query" のフィールド "user" に不明な引数 "id" があります。ファイル: App.js ソース: >

クエリ アプリ { user(id: $userID) } ^^^^

-----------------------enter code here

誰かがこの問題について私たちを助けることができますか?

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

graphql - 混合タイプを処理する GraphQL スキーマ

私は最近、GraphQL を使用して動的データ構成を要求する可能性を調査し始めました。私が最初に飛び出すのは、GraphQL の強く型付けされた概念です。

GraphQL スキーマが混合型オブジェクトの配列を処理する方法はありますか? 説明や参考文献を読んでいただければ幸いです。

私は現在、Node.js を使用して GraphQL を使用していますが、後の実装では Java コンテナーから外れる予定です。すべてのデータは MongoDB から取得された JSON になります。