強制更新は、Next.js の未定義のパスまたはエラー ページにアクセスした結果発生します。
P粉254077747
P粉254077747 2024-04-05 08:32:46
0
1
548

未定義のパスまたはエラー ページにアクセスすると、Next.js がハード更新を実行し、コンテキストがデフォルトの状態に戻ります (つまり、userProfile 状態変数に格納されている値が null になります)

{stucture: Sidebar and main} を使用したレイアウトがあり、Sidebar コンポーネントにコンテキスト フックから状態変数として取得したユーザーの電子メールを表示します。

ただし、未定義のパスをクリックするか、URL に手動で入力すると、カスタム エラー ページがインデックス ページ ('/') にスローされますが、これによりステータスが失われ、## に戻ります。 #null(コンテキスト)。

私のコンテキストファイルは次のようになります

リーリー

ログイン ページのログイン ハンドラーにステータス (成功時) を設定しました。

回避策はありますか、またはローカル ストレージを使用する必要がありますか

現在、彼がインデックス ページに戻ると、ユーザー プロファイルが再度取得されます。

ローカル ストレージの方が良い選択肢かもしれないと思います。

P粉254077747
P粉254077747

全員に返信(1)
P粉511749537

私はコンテキスト ファイルに状態を設定するだけで問題を解決しました。他の場所には設定しませんでした。つまり、context.js ファイルでユーザーのプロファイル データを取得し、そこに状態を設定して、どこでも使用できるようにします。同じ問題を抱えている人がいたら、私に言及してください!

私の context.js ファイルは以下のようになります

リーリー
いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート