読者コミュニティ|【Hasura 本格入門】認証機能付きのタスク管理アプリを作成しよう(Hasura & Next.js14 & Firebase Auth)
本の感想や質問をお気軽にコメントしてください。
いつもハイクオリティな教材をありがとうございます!
無料期間が昨日までと聞いてサクッと取り組んでみました笑
1点つまずいた点があったので書いておきます。
Auth.js と Firebase Auth を使って認証機構を作成しよう(その2) の中でNextSSRApolloClient
が使用されていると思うのですが、後の動作確認で以下のようなエラーが出てしまいました。
⨯ TypeError: _apollo_experimental_nextjs_app_support_ssr__WEBPACK_IMPORTED_MODULE_1__.NextSSRInMemoryCache is not a constructor
at eval (./src/lib/apollo-client.ts:48:16)
at $$ACTION_0 (./src/actions/user/index.ts:18:109)
42 |
43 | return new NextSSRApolloClient({
> 44 | cache: new NextSSRInMemoryCache(),
| ^
45 | link,
46 | });
47 | });
原因はよくわからなかったのですが、NextSSRApolloClient
をApolloClient
に、NextSSRInMemoryCache
をInMemoryCache
にすることで解決しました!
apollo-client-nextjsのREADMEにはRSCとSSRを使い分けるようにと記載があります。
今回はRSCでのユースケースに該当するので、NextSSRApolloClient
ではなくApolloClient
の利用が適切かと思いました!
以上です!ありがとうございました!
isosea さん
いつも書籍をご覧いただきありがとうございます。
そして、いつも誤植やコードの誤りをご指摘いただきありがとうございます。
大変助かります。
おっしゃる通り、今回は RSC を採用していますので、ApolloClient
・InMemoryCache
の利用が正しいですね。
先ほど、書籍の内容を修正しました。
引き続きよろしくお願いします。
めちゃくちゃ参考になりました、ありがとうございます!
この本のおかげで、Hasuraのわかりづらいと感じていた部分が大分スッキリしました。
また、他の本も購入させていただこうかと思います。
(もしデプロイ編が出たら即購入させていただきます…)
bababa さん
本書籍をご覧いただきありがとうございました。
そう言っていただけて本当に嬉しいです。
デプロイに関する章の追加も検討します。
ちなみに、デプロイする際に使用した技術スタックは下記の通りです。
- Vercel(Next.js アプリケーションのデプロイ)
- Cloud Run(Hasura アプリケーションのデプロイ)
- Neon(データベース)
- Terraform(IaC)
こういったコメントはとても励みになります。
引き続きよろしくお願いします。