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.js + Firebase
Search
jacoyutorius
February 14, 2018
Technology
0
240
Nuxt.js + Firebase
Hamamatsu.rb #83にて、Nuxt.jsについて簡単に紹介したLT資料。
jacoyutorius
February 14, 2018
Tweet
Share
More Decks by jacoyutorius
See All by jacoyutorius
オープンデータとAWSで作っている 浜松市イベントカレンダー
jacoyutorius
0
230
浜松市オープンデータを使ってイベントカレンダーアプリを作りました
jacoyutorius
0
73
Amplifyアプリを 任意のタイミングでデプロイするぞ!
jacoyutorius
1
370
AWS Amplify で翻訳アプリを作った話とAmplifyからカジュアルにCloudWatchLogsにログを送る方法について
jacoyutorius
1
1.2k
AWS App Runner + copilot cli
jacoyutorius
1
1.1k
AWS App Runner + Copilot CLI
jacoyutorius
0
53
covid19対策サイトを通してコミュニティとシビックテックのあり方について思うこと
jacoyutorius
0
360
Getting Started Amazon Location Service with Vue.js
jacoyutorius
0
120
ゾンビ化した Webサービスを 生き返らせる
jacoyutorius
0
340
Other Decks in Technology
See All in Technology
AGIについてChatGPTに聞いてみた
blueb
0
130
初心者向けAWS Securityの勉強会mini Security-JAWSを9ヶ月ぐらい実施してきての近況
cmusudakeisuke
0
120
Exadata Database Service on Dedicated Infrastructure(ExaDB-D) UI スクリーン・キャプチャ集
oracle4engineer
PRO
2
3.2k
いざ、BSC討伐の旅
nikinusu
2
780
第1回 国土交通省 データコンペ参加者向け勉強会③- Snowflake x estie編 -
estie
0
130
エンジニア人生の拡張性を高める 「探索型キャリア設計」の提案
tenshoku_draft
1
120
サイバーセキュリティと認知バイアス:対策の隙を埋める心理学的アプローチ
shumei_ito
0
380
個人でもIAM Identity Centerを使おう!(アクセス管理編)
ryder472
3
200
TypeScript、上達の瞬間
sadnessojisan
46
13k
スクラムチームを立ち上げる〜チーム開発で得られたもの・得られなかったもの〜
ohnoeight
2
350
New Relicを活用したSREの最初のステップ / NRUG OKINAWA VOL.3
isaoshimizu
2
590
適材適所の技術選定 〜GraphQL・REST API・tRPC〜 / Optimal Technology Selection
kakehashi
1
400
Featured
See All Featured
How STYLIGHT went responsive
nonsquared
95
5.2k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
665
120k
The Straight Up "How To Draw Better" Workshop
denniskardys
232
140k
Why You Should Never Use an ORM
jnunemaker
PRO
54
9.1k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
226
22k
Build The Right Thing And Hit Your Dates
maggiecrowley
33
2.4k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
109
49k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
27
4.3k
The Invisible Side of Design
smashingmag
298
50k
Automating Front-end Workflow
addyosmani
1366
200k
Scaling GitHub
holman
458
140k
GitHub's CSS Performance
jonrohan
1030
460k
Transcript
Nuxt.js + Firebase Hamamatsu.rb @jacoyutorius
yuto ogi @jacoyutorius { language: [“ruby”, “javascript”], interested_in: [ “alexa
skills”, “vuex” ] }
Nuxt.js + Firebase ؒʹ߹Θͳ͔ͬͨ
࡞ͬͨͷ IUUQpSFLQUZVUPPHJDPN
Firekpt w7VFKT/VYUKT w ࠓओʹ͢͜ͱ w7VFY w ҰԠࠓ͢͜ͱ w'JSFCBTF w 'JSFCBTFͷ3FBMUJNF%BUBCBTFΛ
͍ͬͯΔͷͰɺଞϢʔβʔͷೖྗ༰ ͕ϦΞϧλΠϜʹө͞ΕΔ w#VMNB w 6* w Ϩεϙϯγϒ
Stack w7VFKT/VYUKT w ࠓओʹ͢͜ͱ w7VFY w ҰԠࠓ͢͜ͱ w'JSFCBTF w 'JSFCBTFͷ3FBMUJNF%BUBCBTFΛ͍ͬͯΔͷͰɺ
ଞϢʔβʔͷೖྗ༰͕ϦΞϧλΠϜʹө͞ΕΔ w#VMNB w 6* w Ϩεϙϯγϒ
– Nuxt.js ͡Ίʹ (https:/ /ja.nuxtjs.org/guide/) “201610݄25 zeit.co ͷνʔϜ͕ React ΞϓϦέʔγϣϯΛαʔόʔαΠυϨϯμϦϯά͢Δ
ͨΊͷϑϨʔϜϫʔΫ Next.js Λൃද͠·ͨ͠ɻͦͯͦ͠ͷൃද͔ΒΘ͔ͣ࣌ؒޙɺNext.js ͱ ಉ͡ΓํͰɺ͔͠͠ࠓ Vue.js ΛαʔόʔαΠυϨϯμϦϯά͢ΔΞϓϦέʔγϣϯΛߏங͢ ΔΞΠσΟΞ͕ੜ·Ε·ͨ͠ɻ͢ͳΘͪ Nuxt.js ͷੜͰ͢ɻ”
Nuxt.js w 7VFKT༻ͷαʔόʔαΠυϨϯμϦϯά 443 ༻ϑϨʔϜϫʔΫ w 443ඞਢͰͳ͘ɺΦϓγϣϯʹΑͬͯ41"ͷߏஙՄೳ w ࠓճ࡞ͬͨΞϓϦέʔγϣϯͰ443͍ͯ͠ͳ͍
Nuxt.js w 7VFKT7VF3PVUFS7VFY8FCQBDL#BCFM͕ΈࠐΈࡁ Έ w ໘ͳઃఆ͕ෆཁ w lWVFJOJUz͔ΒఔͰॳظը໘͕ىಈ͢Δ w ॳΊͯSBJMT৮ͬͨͱ͖ͷخ͠Έ
w ։ൃ༻αʔόʔϗοτϦϩʔσΟϯάػೳ͖ w &4ελΠϧͷKTͰίʔσΟϯάΛ࢝ΊΒΕΔ
Nuxt.js w ੩త)5.-ΛੜͰ͖ΔͷͰɺ4(JUIVCQBHFTσϓϩΠͰ͖Δ w )FSPLVͱ͔ʹσϓϩΠͰ͖Δ
$ vue init nuxt-community/starter-template my-first-nuxt-app $ cd my-first-nuxt-app $ yarn
install $ yarn dev initialize
$ tree ~/Work/nuxt/my-first-nuxtjs-app -L 2 ᵓᴷᴷ README.md ᵓᴷᴷ assets ᴹ
ᵋᴷᴷ README.md ᵓᴷᴷ components ᴹ ᵓᴷᴷ AppLogo.vue ᴹ ᵋᴷᴷ README.md ᵓᴷᴷ layouts ᴹ ᵓᴷᴷ README.md ᴹ ᵋᴷᴷ default.vue ᵓᴷᴷ middleware ᴹ ᵋᴷᴷ README.md ᵓᴷᴷ nuxt.config.js ᵓᴷᴷ package.json ᵓᴷᴷ pages ᴹ ᵓᴷᴷ README.md ᴹ ᵋᴷᴷ index.vue ᵓᴷᴷ plugins ᴹ ᵋᴷᴷ README.md ᵓᴷᴷ static ᴹ ᵓᴷᴷ README.md ᴹ ᵋᴷᴷ favicon.ico ᵋᴷᴷ store ᵋᴷᴷ README.md w TUBSUFSUFNQMBUFΛ͏ͱ࠷ݶͷઃఆϑΝΠ ϧͱσΟϨΫτϦ͕ੜ͞ΕΔ w Ͳ͜ʹԿΛஔ͖͔ܾ͘Ίͯ͘Ε͍ͯΔͷҙ֎ ͱॿ͔Δ w ͋ͪͪ͜ʹ3&"%.&͕͋Δͷअຐ͚ͩͲɺ ͦͷσΟϨΫτϦͷ༻్͕ॻ͍ͯ͋Δ w WVFSPVUFS͕ઃఆࡁΈͳͷͰɺQBHFTԼʹ σΟϨΫτϦϑΝΠϧΛஔ͚ͩ͘ͰϧʔςΟϯά ͕ఆٛ͞ΕΔ
Vuex w 7VFKT༻ͷঢ়ଶཧύλʔϯ ϥΠϒϥϦ w 'MVY3FEVY͔ΒӨڹΛड͚͍ͯΔ w ݫີʹ'MVYͱҧ͏ͬΆ͍ w ʰ7VFKT.77.Ͱ͋Δʱʰ'MVY.77.Ͱͳ͍ʱʰ7VFKT'MVYͰͳ͍ʱతͳɻ
͍͔ͭʰ͓લͷ'MVYਅͷ'MVY͡ΌͶ͐ʱతͳهࣄ͕ग़͖ͯͦ͏ w ΞʔΩςΫνϟͷ͋Δ͖ͱΓ͋͑ͣஔ͍͓͍ͯͯɺϑϨʔϜϫʔΫ͕ ਪ͢Δઃܭʹͬͯίʔυ͕៉ྷʹ࣮Ͱ͖ΕͦΕͰྑ͍ͷͰͱ͍͏ ํ
w l4UBUFzάϩʔόϧͳσʔλετΞ w σʔλͷঢ়ଶΛཧ͢Δz4UBUFz͕͋Γɺ ঢ়ଶΛมߋ͢Δૢ࡞Λ͢Δz"DUJPOTz z.VUBUJPOTzɺ7VF$PNQPOFOUT "DUJPO.VUBUJPOΛݺͼग़͢͜ͱͰ ঢ়ଶͷૢ࡞Λ͢Δ w ˞ωοτͰݟ͔͚ΔαϯϓϧίʔυͰɺ
.VUBUJPOTΛͬ͢ඈͯ͠"DUJPOT͔Β4UBUFΛ มߋ͍ͯ͠Δͷ͋Γɺࠞཚͯ͠Δ Vuex
ࡶͳײ w &4ͷॻ͖ํΛ͖ͪΜͱ͍֮͑ͯͳ͍ʢλΠϙͰϋϚΔʣ w 7VFYͲ͏͍͏ઃܭʹ͖͔͍͢͠ ಛʹNVUBUJPOͱBDUJPOͷ͍͚ w ͍ͭͰʹɺBTZODBXBJUͱQSPNJTFʹ͍ͭͯཧղ͢Δඞཁ͋Γ w
JOJU͢Δͱɺॳظϖʔδ QBHFTJOEFYWVF ͕ੜ͞ΕΔͷͰɺ͜ΕΛ͍͡Γͳ͕Βษڧ͢Δͱ͍ ͍ͧɻɻ w ͱΓ͋͑ͣɺQBHFTJOEFYWVFͰΰϦΰϦॻ͍͍ͯͬͯɺ͋ͱ͔ΒDPNQPOFOUʹׂͨ͠Γɺ 7VFYͰσʔλϑϩʔΛ៉ྷʹͨ͠Γ͢Ε͍͍ͱࢥ͏ɻɻɻ w ํσʔλόΠϯσΟϯάʹ׳ΕΔͱ͏ʮ lJEz WBM ʯͱ͔ʹΕͳ͍ w $ISPNF'JSFGPYͷ7VF%FWFMPQQFS5PPMTΛೖΕΔͱͤ w 443ͱ͔Ζ͏ͱ͢Δͱ·ͨপʹϋϚΓͦ͏
DESIGN EVO IUUQTXXXEFTJHOFWPDPN