Webフロントエンド

SPAでメタタグ管理が難しくなる理由

SPAでは「head」がページごとに存在しない 通常のWebページでメタタグが機能する仕組み SPAではHTMLが1回しか来ない なぜこれが問題になるのか headを書き換えれば良いのでは? head管理ライブラリが必要になる理由 なぜSSRがこの問題を解決するのか Prerend…

SSRはなぜアクセシビリティに有利と言われるか

SSRは「アクセシビリティを実装しやすい」構造を持っている スクリーンリーダーはJavaScriptを待たない SSRでは意味構造を直接伝えられる キーボード操作との関係 ARIAの役割が変わる 実務で起きる典型的な問題 SEOとの関係 ただしSSRなら自動でa11yが良くな…

SPAでフォーム送信が難しくなる本当の理由

SPAは「submit」を止めることで成立している ブラウザのネイティブsubmitはとても高機能 SPAはsubmitをキャンセルしている 代わりに何が起きているのか なぜ問題が頻発するのか 特に壊れやすい「リダイレクト」 なぜSSRでは問題が少ないのか よくある失敗例 …

SPAとGraphQLが結びつく理由とOverfetch問題

SPAでは「必要なデータだけ欲しい」ためGraphQLが選ばれやすい REST APIは“画面”ではなく“資源”を返す Overfetch問題とは何か SPAは“画面中心設計”のアプリケーション GraphQLは「画面が欲しい形でデータを取得する」 Underfetch問題も同時に解決する それで…

SPAとマイクロフロントエンドが噛み合う理由

SPAは「画面遷移をしないWeb」であり、だからマイクロフロントエンドと相性が良い MPAでフロントエンド分割が難しい本当の理由 SPAでは「1つのOSの上に複数アプリ」が動く マイクロフロントエンドの正体は「ルーティングの分散管理」 実際の実装は「アプリを…

SSRのアイソモーフィックJavaScriptを理解する

「アイソモーフィックJavaScript」は“同じコードを2回実行する”という設計のこと なぜSSRはJavaScriptをサーバで実行する必要があるのか SSRの本質:HTMLを返すのではなく“状態を同期する” なぜ“ユニバーサルJavaScript”ではなく“アイソモーフィック”なのか …