スタックの片側(フロントエンドまたはバックエンド)でのみ実行されるコードの記述方法
ページコンポーネントでは、サーバー側またはクライアント側でのみコードを実行できますが、window
プロパティ。
このプロパティはブラウザ内にのみ存在するため、確認できます
if (typeof window === 'undefined') {
}
そのブロックにサーバー側のコードを追加します。
同様に、クライアント側のコードを実行するには、チェックするだけです。
if (typeof window !== 'undefined') {
}
JSのヒント:私たちは
typeof
他の方法で未定義の値を検出できないため、ここでは演算子を使用します。できませんif (window === undefined)
「ウィンドウが定義されていません」ランタイムエラーが発生するため
Next.jsは、ビルド時の最適化として、これらのチェックを使用するコードもバンドルから削除します。クライアント側のバンドルには、にラップされたコンテンツは含まれませんif (typeof window === 'undefined') {}
ブロック。
私の無料ダウンロードNext.jsハンドブック
その他の次のチュートリアル:
- Next.jsの使用を開始する
- Next.js vs Gatsby vs create-react-app
- Next.jsをインストールする方法
- Linkを使用してNext.jsの2つのページをリンクする
- ルーターを使用したNext.jsの動的コンテンツ
- getInitialPropsを使用してNext.jsコンポーネントにデータをフィードします
- CSSを使用したNext.jsコンポーネントのスタイリング
- Next.jsでコンテンツをプリフェッチする
- ルーターを使用してNext.jsでアクティブなリンクを検出する
- ソースを表示して、SSRがNext.jsで機能していることを確認します
- Next.js:ヘッドタグにカスタムタグを入力します
- Next.jsアプリケーションをNowにデプロイする
- Next.js:Next.jsのサーバー側またはクライアント側でのみコードを実行します
- Next.jsアプリを本番環境にデプロイする
- Next.jsアプリバンドルを分析する方法
- Next.jsでの遅延読み込みモジュール
- Next.jsアプリにラッパーコンポーネントを追加する
- Next.jsによってアプリに追加されたアイコン
- Next.jsアプリバンドル
- Next.jsルーターの使用方法
- Next.jsAPIルートの使用方法
- Next.jsアプリでサーバー側のCookieを取得する方法
- Next.jsアプリのポートを変更する方法