はじめに Vue.js/NuxtでGraphQLのクライアントを求めると、vue-apollo(apollo-module)に行き着くかと思います。そのコアコンポーネントとなるApollo clientは、非常に優れたライブラリでありまして、Vue.jsに限らず、ReactやAngulerなどでも利用されております そうしたvue-apolloですが、出会って当初はエラーハンドリングに悩むことかと存じます。リクエストの待ち時間に対する処理や、エラーが返ってきた場合の対応などです。個別にerrorコールバックに記述していたのでは、大変な作業となることでしょう。 実装 そこで細かいことは考えずに、丸っとコンポーネント化してみました。 呼び出しについては、以下のような形となります。 コンポーネント引数には、apolloのerrorコールバックの引数であるerrorから、error.graphQL