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
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
100
Nuxtにおける設計
seiyasugimoto
0
89
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
Bakuraku E2E Scenario Test System Architecture #bakuraku_qa_study
teyamagu
PRO
0
560
AIを駆使して新しい技術を効率的に理解する方法
nogu66
0
330
マイベストのシンプルなデータ基盤の話 - Googleスイートとのつき合い方 / mybest-simple-data-architecture-google-nized
snhryt
0
140
ボトムアップの生成AI活用を推進する社内AIエージェント開発
aku11i
0
1.5k
iOSでSVG画像を扱う
kishikawakatsumi
0
190
エンジニアに事業やプロダクトを理解してもらうためにやってること
murabayashi
0
140
例外処理を理解して、設計段階からエラーを見つけやすく、起こりにくく #phpconfuk
kajitack
12
5.6k
Vue 3.6 時代のリアクティビティ最前線 〜Vapor/alien-signals の実践とパフォーマンス最適化〜
hiranuma
2
410
Nitro v3
kazupon
2
220
Private APIの呼び出し方
kishikawakatsumi
2
770
Module Proxyのマニアックな話 / Niche Topics in Module Proxy
kuro_kurorrr
0
2.6k
Amazon Bedrock Knowledge Bases Hands-on
konny0311
0
130
Featured
See All Featured
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
The Invisible Side of Design
smashingmag
302
51k
BBQ
matthewcrist
89
9.9k
Mobile First: as difficult as doing things right
swwweet
225
10k
Producing Creativity
orderedlist
PRO
348
40k
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
2
310
Optimising Largest Contentful Paint
csswizardry
37
3.5k
Music & Morning Musume
bryan
46
6.9k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
359
30k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
116
20k
Become a Pro
speakerdeck
PRO
29
5.6k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
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……