問題タブ [apollostack]
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.
apollo - apollo react: クエリのパラメーターを切り替える適切な方法
私のアプリには、「保存された検索」のリストを含むサイドバーと、検索結果を表示する中央の領域があります。保存された検索リンクをクリックするたびに、その検索結果で中央エリアを更新したいと考えています。
apollo-react でこれを行う適切な方法は何ですか?
私はこれで試しました:
私の保存された検索はsearchVideos({ query: "some query" })
、上記に基づいて、VIDEO_SEARCH_QUERY
さまざまな変数を使用してクエリの再フェッチを行っているオンクリックを実行しています。これは正常に機能し、graphql サーバーに対して呼び出しが行われ、結果が正常に返されます。
私が使用する結果のリストを表示するメイン コンポーネントの場合:
最初に、メイン コンポーネントは、あたかも変数なしでクエリが実行されたかのように、サーバーから結果を取得します。
問題は、すべての再フェッチが apollo のストアに異なるエントリを作成するように見えROOT_QUERY
、メイン コンポーネントが変数のないエントリに「ロック」されていることです。
最初のフェッチと、保存された検索からトリガーされた再フェッチの 1 つ後の apollo のストアは次のようになります。
だから私の質問は、メインコンポーネントを「現在の検索」に切り替える方法、または更新ごとにストアを上書きして、メインコンポーネントが正しく更新されるようにキーが1つだけになるようにする方法です。
完全を期すために、ここに私のものがありますVIDEO_SEARCH_QUERY
:
apollo - のクエリとミューテーションの違いは?
Query と Mutation の両方を使用して、サーバーにいくつかのリクエストを行うことができます。これらのクエリでは、いくつかのパラメーターを渡すことができ、どちらの場合もサーバーからいくつかの結果を取得します。唯一の必須の違いは、"this.props.mutation" のように props からミューテーションを呼び出すことができることですが、"withApollo" で HOC をラップでき、"query" を受け取るため、これはシンタックス シュガーのように見えます。小道具のメソッドも。では、これら 2 種類のリクエストの主な違いは何でしょうか?
apollo - Apollo Link State Default Resolver Not Working (@client クエリ パラメータ変数)
例: https://codesandbox.io/s/j4mo8qpmrw
ドキュメントはこちら: https://www.apollographql.com/docs/link/links/state.html#default
TLDR: これは todo リストです。@client クエリ パラメータはリストを除外しません。
これは、パラメーターとして $id を受け取るクエリです。
クエリはそこに変数を渡します
ただし、デフォルトのリゾルバーはパラメーターを使用しません。上記の codesandbox.io の例で確認できます。
ドキュメントはそれが機能するはずだと言っていますが、何が欠けているのかわかりません。前もって感謝します!
node.js - インターフェイス用の Apollo リゾルバーを作成する
次の typedef があるとします。
送信するすべての ID を同じ方法で処理したいと考えています。現在、次のようなリゾルバーが必要です。
多くのタイプが を実装Node
しているため、コードの重複が多くなり、開発者が ID をエンコードする正しい方法を忘れたり、それらをまとめてエンコードするのを忘れたりするのは非常に簡単です。
このようなことをする方法はありますか?
そのようなFoo
、Bar
およびの他の実装はリゾルバNode
を継承しますか?id