Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
SSR+SPA
Search
Sigma
October 10, 2022
Programming
0
130
SSR+SPA
Sigma
October 10, 2022
Tweet
Share
More Decks by Sigma
See All by Sigma
Proxmox_VE.pdf
seiyasugimoto
0
200
Stable Diffusionで遊んでみた
seiyasugimoto
1
130
EVAフレームワーク
seiyasugimoto
0
110
Nuxtにおける設計
seiyasugimoto
0
90
Atomic Designを ディレクトリ以外で表現
seiyasugimoto
0
80
throttleすげぇぇぇ
seiyasugimoto
0
78
スマホでPythonしたい
seiyasugimoto
0
66
平文で保存するな!
seiyasugimoto
0
87
ソースコードを読もう
seiyasugimoto
0
85
Other Decks in Programming
See All in Programming
Combinatorial Interview Problems with Backtracking Solutions - From Imperative Procedural Programming to Declarative Functional Programming - Part 1
philipschwarz
PRO
0
120
堅牢なフロントエンドテスト基盤を構築するために行った取り組み
shogo4131
4
1.8k
CSC305 Lecture 17
javiergs
PRO
0
240
Rediscover the Console - SymfonyCon Amsterdam 2025
chalasr
2
120
テストやOSS開発に役立つSetup PHP Action
matsuo_atsushi
0
130
AI時代もSEOを頑張っている話
shirahama_x
0
210
しっかり学ぶ java.lang.*
nagise
1
470
Google Antigravity and Vibe Coding: Agentic Development Guide
mickey_kubo
2
120
大体よく分かるscala.collection.immutable.HashMap ~ Compressed Hash-Array Mapped Prefix-tree (CHAMP) ~
matsu_chara
1
200
TypeScriptで設計する 堅牢さとUXを両立した非同期ワークフローの実現
moeka__c
6
2.8k
dnx で実行できるコマンド、作ってみました
tomohisa
0
130
ID管理機能開発の裏側 高速にSaaS連携を実現したチームのAI活用編
atzzcokek
0
160
Featured
See All Featured
We Have a Design System, Now What?
morganepeng
54
7.9k
Raft: Consensus for Rubyists
vanstee
140
7.2k
Context Engineering - Making Every Token Count
addyosmani
9
450
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
61k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
119
20k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.3k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
140
34k
4 Signs Your Business is Dying
shpigford
186
22k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
3.8k
How STYLIGHT went responsive
nonsquared
100
5.9k
Learning to Love Humans: Emotional Interface Design
aarron
274
41k
BBQ
matthewcrist
89
9.9k
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……