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
SSR+SPA
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Sigma
October 10, 2022
Programming
160
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
SSR+SPA
Sigma
October 10, 2022
More Decks by Sigma
See All by Sigma
Proxmox_VE.pdf
seiyasugimoto
0
220
Stable Diffusionで遊んでみた
seiyasugimoto
1
140
EVAフレームワーク
seiyasugimoto
0
120
Nuxtにおける設計
seiyasugimoto
0
100
Atomic Designを ディレクトリ以外で表現
seiyasugimoto
0
92
throttleすげぇぇぇ
seiyasugimoto
0
87
スマホでPythonしたい
seiyasugimoto
0
75
平文で保存するな!
seiyasugimoto
0
98
ソースコードを読もう
seiyasugimoto
0
99
Other Decks in Programming
See All in Programming
Java × distroless で 軽量なコンテナイメージを / Java on Distroless
contour_gara
0
560
決定論的オーケストレーションの設計と実装 / Design and Implementation of Deterministic Orchestration
nrslib
4
1.5k
Go1.27で導入されるジェネリクスメソッドでできること
mackee
0
170
LLM本来の能力を解き放つサンドボックス技術とAI民主化への適用
yukukotani
3
4.5k
例外の正しい扱い方 そのエラー try-catchして大丈夫?
jinwatanabe
0
270
肥大化するレガシーコードに立ち向かうためのインターフェース分離と依存の逆転 / JJUG CCC 2026 Spring
hirokunimaeta
0
600
Mujeres en SEO Summit 2026 - Greatest Disaster Hits en Web Performance
guaca
0
190
依存関係から依存物へ―Dependencyという言葉の歴史をひも解く
j_lee
0
130
なぜ型を書くのか? TSKaigi2026で改めて考える #tskaigi_smarthr
kajitack
0
140
ローカルLLMを使ってB2Bサービスを作っていての学び
yaotti
0
210
ECSアプリログをFireLensでコスト削減しようとしたけど諦めた話 in Fargate×Node.js
akihisaikeda
2
4.2k
RTSPクライアントを自作してみた話
simotin13
0
620
Featured
See All Featured
Mind Mapping
helmedeiros
PRO
1
260
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.3k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.5k
Making the Leap to Tech Lead
cromwellryan
135
9.9k
sira's awesome portfolio website redesign presentation
elsirapls
0
280
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
5
1.1k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
2k
The Mindset for Success: Future Career Progression
greggifford
PRO
0
370
The Language of Interfaces
destraynor
162
27k
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.9k
Product Roadmaps are Hard
iamctodd
PRO
55
12k
The SEO Collaboration Effect
kristinabergwall1
1
490
Transcript
SSR+SPA Nuxt+Vuex
SSR(+SPA) とは • SSR とは ◦ サーバーサイドレンダリングの略。 クライアントサイド(SPA)と サーバーサイ ドの
HTMLレンダリングを 併用しユーザー体験を向 上させることを指す。
冷静に考えるととんでもないことをやってる • サービス内の別のページからリンクすると クライアントサイドで レンダリングされる。 • そのページをF5を押して再読み込みすると サーバーサイドでレ ンダリングされる …
は?
なんでそんなクソ面倒くさいことを? • サーバーサイドでレンダリングするならテンプレートエンジンを使った昔ながらの 方法でやれば良いじゃない。 • SPAが必要なほど複雑なフロントエンドで、OGPのクローラの面倒を見たりSNS でシェアされた際のファーストビューの速さが問題になる要件そうそう無いで しょ。 つい先日あった
Nuxtで対応 • NuxtにはSSRサポートがある これで勝つる わけなかった
案件当時の標準的なNuxtプロジェクト • Nuxt + TypeScript を実現するために外部ライブラリを使う ◦ nuxt-property-decorator ( vue-property-decorator
) ◦ vuex-module-decorator • vuex-module-decorator の issue にとんでもないコメントを見つけてしまう。 ◦ https://github.com/championswimmer/vuex-module-decorators/issues/146#issuecomm ent-515269904
SSRのバグのソリューションを探った 結果、getModule() に根深い問題が ありそう。 このリポジトリは大規 模なオーバーホール 無しではSSRでは使 えない。
終わった……
None
Readmeに書いてある おまじないの意味を知る
exportしてるpluginsがキモ getModule()しているのがポイント
I GOT KOTONAKI……