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
NEC、AIで部品購買業務の納期調整を自動化
IT関連
2024-11-14 12:46
AWS、無料のアプリ開発トレーニングシリーズ–Twitchで毎週配信
IT関連
2021-02-03 08:38
VR空間で短尺アニメを作れる「AniCast Maker」、Oculus Quest向けに配信 エイベックスとVRの第一人者・GOROman氏の会社がタッグ
企業・業界動向
2021-04-11 13:55
ツイッターがストーリーズ機能「フリート」に縦型全画面広告を試験導入、米国でパイロットテスト開始
ネットサービス
2021-06-03 05:18
ネオジャパン、避難確保計画の作成システムを構築–年間の作業時間が41%減少
IT関連
2023-04-29 05:30
スマートロック入退室管理「Akerun」のフォトシンスが17.5億円調達、累計調達額は約70億円に
IoT
2021-07-09 12:49
米NortonLifeLock、仮想通貨マイニングソフト「Norton Crypto」発表 「安全な環境を提供」
企業・業界動向
2021-06-04 11:52
ビル管理のアイング、RPAで受注関連業務を効率化–コア業務の人員を強化
IT関連
2021-01-16 21:16
中津川市教育委員会、MDRサービスを導入–教職員が使用する端末をサイバー攻撃から保護
IT関連
2024-02-17 23:55
アップル共同創業者ウォズニアック氏が「修理する権利のおかげでアップルが創業できた」と明かす
ハードウェア
2021-07-10 17:46
ポケモンGOのバレンタインは時間との勝負 チャレンジのクリア条件にも要注意
くらテク
2021-02-16 22:59
テクノロジーと災害対応の未来3「接続性、地球が滅びてもインターネットは不滅」
EnviroTech
2021-06-02 08:43
「ChatGPT」が書いた文章を見分けることは可能か–5つの検出ツールをテスト
IT関連
2023-08-17 02:00
Ziddyちゃんの「私を社食に連れてって」:Okta Japanの新オフィスでサステナビリティーの高い無料ランチ編
IT関連
2023-02-25 04:15