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
400
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Nuxt Server Components
v-tokyo #24
wattanx
March 24, 2026
More Decks by wattanx
See All by wattanx
フロントエンド技術選定の裏側
wattanx
1
130
Unlocking the potential of Nuxt Server Components
wattanx
2
760
Deep dive into Nuxt Server Components
wattanx
1
4k
Nuxt Test Utils で始める効率的な Nuxt アプリケーションのテスト
wattanx
4
4.3k
Demystifying Nuxt Bridge
wattanx
3
7.7k
小さく進める Nuxt 3 移行
wattanx
0
2.1k
プロダクト開発を止めずに Composition API と TypeScript に 最速で移行するための戦い
wattanx
0
2.4k
Other Decks in Programming
See All in Programming
Go言語とトイモデルで学ぶTransformerの気持ち / fukuokago23-transformer
monochromegane
0
160
コーディングルールの鮮度を保ちたい for SRE NEXT 2026 / keep-fresh-go-internal-conventions-sre-next-2026
handlename
0
160
AWS CDK を「作」ってみた 〜フルスクラッチで見えた CDK の裏側〜 / aws-cdk-from-scratch
gotok365
3
2.7k
yield再入門 #phpcon
o0h
PRO
0
860
ITヒヤリハットを整理してみた ~ライフサイクルと原因から考える再発防止策~
koukimiura
1
130
React本体のコードリーディング
high_g_engineer
1
120
属人化した知識を、 AIが辿れる地図にする
pkshadeck
PRO
1
130
言語を使う側から、作る側へ。 自作 Lisp で得た新たな気づき。
andpad
0
140
そこに3びきプロダクトがいるじゃろう——生成AI時代における“価値が届かない理由”の構造
kosuket
0
370
今さら聞けない .NET CLI
htkym
0
170
アルゴリズムは何を圧縮しているのか ─ Haskell から育った「圧縮代数」というメンタルモデル
naoya
16
3.7k
AI時代の仕事技芸論〜ソフトウェア開発で「遊ぶように働く」職人的熟達のすすめ(スクフェス仙台 2026バージョン)
kuranuki
0
790
Featured
See All Featured
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
200
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.6k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
28
3.6k
Into the Great Unknown - MozCon
thekraken
41
2.6k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
232
55k
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
400
How to optimise 3,500 product descriptions for ecommerce in one day using ChatGPT
katarinadahlin
PRO
2
3.7k
Un-Boring Meetings
codingconduct
0
360
Utilizing Notion as your number one productivity tool
mfonobong
4
490
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
230
The Curse of the Amulet
leimatthew05
2
13k
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
620
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/