Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
推しのウェブ技術 〜2026年夏〜 Declarative Partial Updates
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
rch850
August 08, 2026
Programming
58
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
推しのウェブ技術 〜2026年夏〜 Declarative Partial Updates
Fukui Tech LT #2
での発表
rch850
August 08, 2026
More Decks by rch850
See All by rch850
Security Hub と出会ってから 1年半が過ぎました
rch850
1
430
#2022年に学んで良かった技術
rch850
0
1.3k
face-api.js で璃奈ちゃんボードを作ってみたよ
rch850
0
630
いい感じにスピードアップするコンテストの紹介
rch850
0
470
†2020年に建つ墓標達†
rch850
0
130
大掃除中の困ったを解決しようとした話
rch850
0
490
もしかして頻尿
rch850
0
77
SVGのよさみを語る会
rch850
0
160
俺の git-review
rch850
0
160
Other Decks in Programming
See All in Programming
DynamoDBの基礎を振り返りながらベクトル検索機能を理解する
musan
3
260
AI駆動開発にグラフDBを重ねてみた
satoshi256kbyte
2
690
DroidKaigi 2026 「個人開発という実験場: Android エンジニアが手にする4つの自由」
slashnephy
0
190
AIに既存システムを理解させる技術 ~レガシーを見捨てないハーネスエンジニアリング入門~
ochtum
0
200
Foundry Localでエージェント開発
seosoft
0
110
How I Won Prize Money at a Hackathon Using Codex and Symphony Alpha
yasei_no_otoko
0
140
AI時代に学ぶ 好きなルール 嫌いなルール Linter編
shorty5121
0
770
Vibes Containers 〜AIで変わるコンテナ設計と運用〜
tkikuc
1
380
MySQLとPostgreSQLって何が違うの?
akagami
PRO
0
160
LoopHub - ローカルで動く GitHub で、AI と共同開発
jugyo
0
110
PHPプロジェクトの結合バランスを可視化する #php_night
kajitack
0
190
AWS Transform Customによる Spring Boot 2.xから4.xへのVerUp
satoshi256kbyte
2
130
Featured
See All Featured
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
850
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
360
A Tale of Four Properties
chriscoyier
163
24k
How to optimise 3,500 product descriptions for ecommerce in one day using ChatGPT
katarinadahlin
PRO
2
3.8k
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
74
42k
Unsuck your backbone
ammeep
672
58k
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
510
My Coaching Mixtape
mlcsv
0
300
Optimizing for Happiness
mojombo
378
71k
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
1
390
The World Runs on Bad Software
bkeepers
PRO
72
12k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
6.1k
Transcript
推しのウェブ技術 〜2026年夏〜 @rch850 20206-08-08 Fukui Tech LT #2
テーマ 推し
推しのウェブ技術 〜2026年 夏〜
推しのウェブ技術 〜2026年 夏〜 Declarative Partial Updates
推しのウェブ技術 〜2026年 夏〜 Declarative Partial Updates 宣言的部分更新
宣言的部分更新って何だ?
きっと完全理解できます
解決したい課題
表示に時間がかかるウェブサイト
……
…………
………………
………………!
売上の集計に 時間がかかり 全体の表示が ひきずられる
なぜ表示が詰まるのか
逐次描画だから
【HTTP レスポンス】 <!DOCTYPE html> <html> <body> <header>...</header> ここで時間がかかる集計処理 表示は途中で止まったまま
【HTTP レスポンス】 <!DOCTYPE html> <html> <body> <header>...</header> <main>...</main> </body> </html>
集計が終わり、 残りの HTML を返し、 描画が完了
ガワだけ表示して あとから数字を入れられないか
これまでの対策
非同期処理 (Ajax)
👀
😊
<main> <div class=”sales”> loading.... </div> </main> HTTP 通信は一旦完了 売上を別の通信で取得 <main>
<div class=”sales”> ¥428,600 </div> </main>
非同期処理と部分描画を扱う フロントエンド技術の台頭
Ajax 誕生から20年ほどの時を経て
Chrome チームからの提案
Declarative Partial Updates
HTML で実現しちゃおうぜ
Declarative Partial Updates 【HTTP レスポンス】 【HTML 構造 (DOM)】 <div class=”sales-area”>
<?start name=”sales”> loading… <?end> </div> <div class=”sales-area”> loading… </div> 「ここは後から書き換えますよ」というマークをする。
Declarative Partial Updates 【HTTP レスポンス】 【HTML 構造 (DOM)】 <div class=”sales-area”>
<?start name=”sales”> loading… <?end> </div> <div class=”sales-area”> ¥428,600 </div> <template for=”sales”> ¥428,600 </template> <?start><?end> の場所に、後から書いた <template> の内容が入る
こんなの今まであった?
デモ https://x.com/rch850/status/2085954340452450526
<?start name=”sales”><?end>
<template for=”sales”> … </template>
order-count shipping orders events
Declarative Partial Updates 宣言的 部分更新 JavaScript なしで HTML だけで要素の差し替えを実現!
Declarative Partial Updates 【HTTP レスポンス】 【HTML 構造】 <div class=”sales-area”> <?start
name=”sales”> loading… <?end> </div> <div class=”sales-area”> ¥428,600 </div> <template for=”sales”> ¥428,600 </template> <?start><?end> の場所に、後から書いた <template> の内容が入る
今すぐ試したい!
動かし方 1. Chrome のオプションを有効にする ◦ ◦ chrome://flags/#enable-experimental-web-platform-features “Experimental Web Platform
features” 2. サンプル JavaScript をダウンロードして実行する。 ◦ 拡張子を cjs にして node で実行するなど。
まとめ • • • Declarative Partial Updates を紹介しました。 JavaScript なしで
HTML だけで要素の差し替えを実現! 今後フレームワークにも搭載されていくかも?
おまけ
Q&A • 用途は? ◦ ◦ • 向いてないケースは? ◦ • 何でも使っていい、と言いたい。
強いて言えば、データの即時反映を要求するダッシュボードや、個人ごとにコンテンツが異 なるサイトなど、キャッシュが不向きなウェブサイトか。 挿入位置が前後するもの。 コネクションが張りっぱなしにならない? ◦ 現代インターネット(HTTP/2 以降)ではそもそも張りっぱなしなので、問題にならないと 思われます。
気になること • クローラーの動作への影響 ◦ ◦ • クローラーの動作とは、Google 検索であったり、X や Slack
での展開であったり 短時間でレスポンスを返しきれば問題なさそう キャッシュへの影響 ◦ ◦ SSR と同じように考えておけば良さそう つまり気をつけて扱いましょう
関連資料 • • • • WICG/declarative-partial-updates · GitHub 宣言型部分更新 |
Blog | Chrome for Developers Chrome 150に追加された宣言的部分更新でJavaScriptを一切書かずにスラ イドショーアプリを作る Declarative Partial UpdatesをストリーミングSSRに使う