Angularが新機能「インクリメンタルハイドレーション」をプレビュー。静的サイトをロード後、JavaScriptが必要になった時点で動的に組み込み

今回は「Angularが新機能「インクリメンタルハイドレーション」をプレビュー。静的サイトをロード後、JavaScriptが必要になった時点で動的に組み込み」についてご紹介します。

関連ワード (快適、説明、開発等) についても参考にしながら、ぜひ本記事について議論していってくださいね。

本記事は、Publickey様で掲載されている内容を参考にしておりますので、より詳しく内容を知りたい方は、ページ下の元記事リンクより参照ください。


Webアプリケーションフレームワーク「Angular」の開発チームは、次期Angularに搭載予定の新機能「Incrmental Hydratio」(インクリメンタルハイドレーション)をプレビュー公開しました。

We just shared a feature preview of the next step in Angular’s hydration story.

Meet Incremental Hydration. pic.twitter.com/u60q2C2NaC

— Angular (@angular) October 16, 2024

基盤となるハイドレーションとは?

インクリメンタルハイドレーションの基盤となる「ハイドレーション」機能とは、サーバサイドで静的なHTMLを生成し、それをWebブラウザで表示した後で、何らかのイベントをきっかけにJavaScriptをアタッチすることで、後から動的なWebサイトを実現する手法です。

まず最初に静的なHTMLのみを読み込んで表示することで、Webサイトを高速に表示できることが利点となります。

Angularは既にサーバサイドレンダリングによる静的なHTML生成に対応し、ハイドレーションにも対応しています。

そして今回新たに、ハイドレーションをコンポーネントごとに個別に設定できる「インクリメンタルハイドレーション」がプレビューされました。

パーツごとにハイドレーションを設定、実行

インクリメンタルハイドレーションは、Webサイトのパーツごとにハイドレーションを設定、実行できる機能です。必要なときに必要な場所にだけJavaScriptをアタッチすることで、より快適なユーザー体験を実現する手段となります。

下記は公開されたインクリメンタルハイドレーションのデモ動画からのキャプチャです。

まず通常のハイドレーションと同様に、サーバサイドで静的なHTMLが生成され、それがWebサイト上に高速にロード、表示されます(デモでは視覚的に分かりやすいように、JavaScriptがアタッチされていないコンポーネントがモノクロで表示されています)。

fig1

カーソルで検索フィールドをクリックすると、その瞬間に検索フィールドにJavaScriptがアタッチされ、検索機能が有効になります。

fig2

画面左下のハイドレーションの状態を示すウィンドウには、1つのコンポーネント、容量にして1.2kBのJavaScriptがディレイなくアタッチされたことが示されています。

fig3

次にカーソルを商品の上にホバーさせると、その瞬間に商品の一段目のパーツにもJavaScriptがアタッチされ、機能が有効になりました。

fig

インクリメンタルハイドレーションのコード

インクリメンタルハイドレーションを有効にするには、まずApplicationConfigのProvidersクラスで「withPartialHydration」を設定します。

fig5

その上で、アプリケーションテンプレートの「@defer」ブロックでhoverなどでハイドレートするように記述します。

fig6

「@defer」ではさまざまなトリガーを設定してハイドレーションを実行できると説明されています。

fig7

Angularは現在最新バージョンが18となっており、11月にバージョン19がリリース予定です。インクリメンタルハイドレーションもバージョン19で実装が開始されると見られます。

COMMENTS


Recommended

TITLE
CATEGORY
DATE
ブリヂストンとトッパン・フォームズ、タイヤ実装型RFIDタグの共同開発に着手
IT関連
2022-10-30 22:53
上海モーターショーで注目を集めていたEVたち
モビリティ
2021-05-02 22:47
EU、大手ITの規制強化で合意–「デジタル市場法」制定へ
IT関連
2022-03-29 12:24
刻々と変わるビジネス環境、クラウド移行は待ったなし 誰に相談すればいい?
フレッシュサマリ
2021-03-03 23:47
PwCが説く「“親亀・子亀・孫亀の構造”によるサステナビリティーの意味」とは
IT関連
2022-10-01 23:40
NTTデータ、全銀ネットの障害対応を説明–根本原因にめども「包括的な点検が必要」
IT関連
2023-11-08 11:01
Denoとして初の長期サポート版「Deno 2.1」正式リリース。WebAssemblyの実行が容易に、「npm init」など新機能
JavaScript
2024-12-02 14:57
千葉県・柏に「発電ブランコ」 こいでスマホ充電
IT関連
2021-05-28 22:19
IT専門家の51%が「ChatGPT」を使うサイバー攻撃に警戒–BlackBerry調査
IT関連
2023-02-09 13:39
日本で動き始めたIBM製“商用量子コンピュータ”の性能は? 実機を見てきた
科学・テクノロジー
2021-07-28 11:54
Ziddyちゃんの「私を社食に連れてって」:Veeva JapanのキャラクターVern君と意気投合編
IT関連
2023-11-25 03:13
マカフィーとファイア・アイの統合会社、新社名を「Trellix」に
IT関連
2022-01-21 01:11
UberがEVを推進する「Uber Green」プログラムを北米1400都市に拡大
EnviroTech
2021-01-14 10:39
イオン銀行、日立のソリューション活用で共通アプリケーション基盤構築
IT関連
2023-12-02 16:29