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
Nuxt Server Components
Search
wattanx
March 24, 2026
Programming
290
0
Share
Nuxt Server Components
v-tokyo #24
wattanx
March 24, 2026
More Decks by wattanx
See All by wattanx
フロントエンド技術選定の裏側
wattanx
1
110
Unlocking the potential of Nuxt Server Components
wattanx
2
710
Deep dive into Nuxt Server Components
wattanx
1
3.9k
Nuxt Test Utils で始める効率的な Nuxt アプリケーションのテスト
wattanx
4
4.2k
Demystifying Nuxt Bridge
wattanx
3
7.5k
小さく進める Nuxt 3 移行
wattanx
0
2.1k
プロダクト開発を止めずに Composition API と TypeScript に 最速で移行するための戦い
wattanx
0
2.3k
Other Decks in Programming
See All in Programming
From Formal Specification to Property Based Test
ohbarye
0
450
Don't Prompt Harder, Structure Better
kitasuke
0
790
의존성 주입과 모듈화
fornewid
0
150
JOAI2026 1st solution - heron0519 -
heron0519
0
150
Making the RBS Parser Faster
soutaro
0
570
Surviving Black Friday: 329 billion requests with Falcon!
ioquatix
0
1.4k
ルールルルルルRubyの中身の予備知識 ── RubyKaigiの前に予習しなイカ?
ydah
1
220
Back to the roots of date
jinroq
0
520
GNU Makeの使い方 / How to use GNU Make
kaityo256
PRO
16
5.6k
2026_04_15_量子計算をパズルとして解く
hideakitakechi
0
120
Spec Driven Development | AI Summit Vilnius
danielsogl
PRO
1
120
TiDBのアーキテクチャから学ぶ分散システム入門 〜MySQL互換のNewSQLは何を解決するのか〜 / tidb-architecture-study
dznbk
1
190
Featured
See All Featured
Thoughts on Productivity
jonyablonski
76
5.1k
How Software Deployment tools have changed in the past 20 years
geshan
0
33k
Context Engineering - Making Every Token Count
addyosmani
9
850
First, design no harm
axbom
PRO
2
1.2k
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
1
2.6k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.4k
Ten Tips & Tricks for a 🌱 transition
stuffmc
0
110
Digital Ethics as a Driver of Design Innovation
axbom
PRO
1
270
Faster Mobile Websites
deanohume
310
31k
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
1
170
Making the Leap to Tech Lead
cromwellryan
135
9.8k
Utilizing Notion as your number one productivity tool
mfonobong
4
300
Transcript
Nuxt Server Components v-tokyo#24, wattanx
wattanx STORES Design Engineer / Nuxt Ecosystem Team
What’s Nuxt Server Components?
experimental 個々のコンポーネントをサーバーで レンダリングできる Nuxt 3 から導入された機能
Server でだけ実行される Hydration されないので Client bundle に不要な JS が含まれない
Server が必須ではない ビルド時にアプリケーションで利用される Server Component を プリレンダリングする 完全に静的なサイトであっても利用可能
Astro Client Islands の逆 Nuxt Server Components は Interactive じゃない島をつくる
.server.vue にすると Server Component に Server でしか使えないコードが書ける client bundle に含まれない
Client Interactivity with Server Components Server Components の Slot にいれると
interactive にできる (Hydration できる)
Partial Hydration nuxt-client ディレクティブを使うことで 一部だけ Hydration できる
Lazy Server Components レンダリング完了するまで fallback slot が表示 されるのでナビゲーションをブロックしない
How it works
/__nuxt_island/{component_name}.json へ リクエストするとコンポーネントがレンダリングされる
CSR の場合 Browser Server URL にアクセス 空の HTML を返す GET
/__nuxt_island/{component_name}.json Vue App を Mount Server Component Rendering レンダリング HTML 生成
SSR の場合 Browser Server URL にアクセス Server-Side Rendering 開始 Server
Component Rendering /__nuxt_island/ へのリクエストはせず 直接レンダリング処理を実行できる HTML 生成 レンダリング Hydration Server Component は Hydration されない
Server Components のレンダリング処理が複雑 https://github.com/nuxt/nuxt/blob/main/packages/nuxt/src/app/components/nuxt-island.ts#L298-L355
vue-onigiri 🍙 https://github.com/huang-julien/vue-onigiri Vue Component Tree を serialize/deserialize して Vue
Server Component を実現 複雑になった Server Component のレンダリング 処理を改善するため
vue-onigiri を使うと これだけのコードになるかも
When to use Nuxt Server Components?
ブログ 基本的に interactive な要素が少ないので
ネットショップが向いてるかも
ネットショップが向いてるかも ナビゲーション 商品の説明 特定ユーザーだけの割引 ユーザーごとのおすすめ
ネットショップが向いてるかも ナビゲーション 商品の説明 特定ユーザーだけの割引 ユーザーごとのおすすめ Static(prerendering) Server Component
Other frameworks
Astro Server Islands https://docs.astro.build/ja/guides/server-islands/ Server でだけレンダリングされる コンポーネントを作れる Server-Side でのみ実行される レンダリング完了するまで
fallback slot が 表示される
まとめ
まとめ 個々のコンポーネントをサーバーで レンダリングできる
まとめ https://commerce-nuxt-sc.wattanx.workers.dev/