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
rch850
August 08, 2026
Programming
26
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
420
#2022年に学んで良かった技術
rch850
0
1.3k
face-api.js で璃奈ちゃんボードを作ってみたよ
rch850
0
630
いい感じにスピードアップするコンテストの紹介
rch850
0
470
†2020年に建つ墓標達†
rch850
0
120
大掃除中の困ったを解決しようとした話
rch850
0
490
もしかして頻尿
rch850
0
76
SVGのよさみを語る会
rch850
0
160
俺の git-review
rch850
0
160
Other Decks in Programming
See All in Programming
人間の目はかわらない、だからJPEGは30年もつ
yuzneri
12
18k
作るコストが小さくなった時代 幸せに働くために改めて考えたいこと 〜エンジニアとして価値を出し続けるために注視している二分野〜
yuppeeng
0
190
為什麼你並不需要ViewModel / No, you don't need a ViewModel
lovee
1
480
改善しないと、タスクが回らない。 “てんこ盛りポジション” を引き継いだ情シスの、入社3ヶ月の業務改善録
krm963
0
260
使いながら育てる Claude Code — 開発フローの1コマンド化 × 繰り返し指摘の自動仕組み化
shiki_kakaku
0
1.7k
プロポーザルを書いてもらう
pvcresin
0
280
【やさしく解説 設計編・中級 #6】良いアーキテクチャとは ~ 一本の登り道の、行き先 ~
panda728
PRO
0
210
AIが無かった頃の素敵な出会いの話
codmoninc
1
390
jsmini JavaScript Engine を作ってみた話
yosuke_furukawa
PRO
0
290
【QA Test Talk Vol.8】AI-DLC による Whole Team Approach の加速
pkshadeck
PRO
0
120
ここ半年くらいでAIに作らせたR用ツール
eitsupi
0
370
メールのエイリアス機能を履き違えない
isshinfunada
0
230
Featured
See All Featured
Darren the Foodie - Storyboard
khoart
PRO
3
3.5k
4 Signs Your Business is Dying
shpigford
187
22k
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
730
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
2k
Evolving SEO for Evolving Search Engines
ryanjones
0
250
The SEO identity crisis: Don't let AI make you average
varn
0
530
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
3
1.1k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
123
22k
Technical Leadership for Architectural Decision Making
baasie
3
470
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
64
56k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
2.1k
Heart Work Chapter 1 - Part 1
lfama
PRO
8
36k
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に使う