nextJS 13 に慣れようとしています。 私が遭遇したのは、getServerSideProps
関数がページ プロパティを事前レンダリングしないということでした。初めての試みなのでやり方が間違っているのか分かりません。
ここは
/app/login/page.js
ここで達成しようとしている重要なことは、ログイン ページを表示する前に、axios リクエストを使用してサーバーのセッション キーを確認することです。ユーザーがログインしている場合、ユーザーはホームページにリダイレクトされます。これを機能させることができれば、今後のコードは次のとおりです:
リーリーnpm run dev
を使ってみました それでも同じ結果が得られます...
getServerSideProps
を使用して、ページを表示する前にサーバー側のレンダリングと認証チェックを実行しようとしているようです。コードから判断すると、正しい軌道に乗っているようです。ただし、
さらに、getServerSideProps
から返されたプロパティをLogin
コンポーネントに渡していないことに気付きました。サーバー側のプロパティをコンポーネントに渡すには、次のようにmessage
プロパティを受け入れるようにLogin
関数を変更する必要があります。 リーリーgetServerSideProps
これがお役に立てば幸いです!他にご質問がございましたら、お知らせください。を使用しているため、
npm run devコマンドはページの静的 HTML ファイルを生成しません。代わりに、リクエストごとにページが生成されます。したがって、
getServerSidePropsが適切に動作していることをテストしたい場合は、ブラウザでページにリクエストを作成し、コンソール ログで
console.log( )ステートメントを確認する必要があります。
コメントで述べたように、これに従う必要がありますhttps://nextjs.org/docs/app/building-your-application/data-fetching/fetching#async-and-await -in -server-componentsNext 13 フォルダーと
app
フォルダーを使用する場合。これは、次のようなことを試せることを意味します:
リーリーもちろん、メッセージの小道具を追加する必要があります。