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
Next.js・microCMSで ポートフォリオサイトを作りかえて学んだこと
Search
Azusa Okamoto
March 24, 2022
Programming
2.2k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Next.js・microCMSで ポートフォリオサイトを作りかえて学んだこと
2022年3月24日
ジャムジャム!!Jamstack_6【初心者歓迎LT会】登壇資料
Azusa Okamoto
March 24, 2022
More Decks by Azusa Okamoto
See All by Azusa Okamoto
GraphQLでAPI開発 やってみよう!
azunyan
0
42
「わたし色」の見方で拓く世界
azunyan
0
30
ちゃんとSvelte, Hello Worldした!
azunyan
0
78
最近取り組んでいることについて喋ってみる
azunyan
0
24
フロントエンドエンジニアが関数型プログラミングに出会った話
azunyan
0
120
TECH WOMAN KANSAIの 取り組みと今後~2024年の振り返りと2025年へ~
azunyan
0
100
Go初心者が開発やってみた!
azunyan
1
580
デブサミウーマン2023 アウトプットって何が良いの?
azunyan
0
1.3k
個人的に楽しかった実装2022
azunyan
0
150
Other Decks in Programming
See All in Programming
進化を続けるGo toolsの現在地 / The Current State of Ever-Evolving Go Tools
hond0413
0
240
変わらないものが、変わるものを決める — 意図駆動開発 × イベントソーシング × イミュータブル | What Doesn't Change Decides What Can — IDD × Event Sourcing × Immutability
tomohisa
0
1.8k
リアルな遅延を測る仕様
kota_yata
1
120
全PRの83%がAIレビューだけでマージできるようになった開発組織はその後どうなったか
athug
1
1.8k
プロポーザルを書いてもらう
pvcresin
0
550
【やさしく解説 設計編・中級 #6】良いアーキテクチャとは ~ 一本の登り道の、行き先 ~
panda728
PRO
0
220
Claude Code全社展開のためにやったことn選~プラグイン302個・コミッター271人を支えるために~
kenchan
5
1.6k
Flow は今どうなっているか
mizdra
PRO
0
610
数百円から始めるRuby電子工作
tarosay
0
160
5分で問診!Composer セキュリティ健康診断
codmoninc
0
1k
Claude CodeとAgentCore Gatewayを繋ぐ際の認証認可 / Authentication and authorization when connecting Claude Code with AgentCore Gateway
har1101
2
300
jsmini JavaScript Engine を作ってみた話
yosuke_furukawa
PRO
0
330
Featured
See All Featured
YesSQL, Process and Tooling at Scale
rocio
174
15k
The Invisible Side of Design
smashingmag
301
52k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
230
23k
Jess Joyce - The Pitfalls of Following Frameworks
techseoconnect
PRO
1
370
Docker and Python
trallard
47
4.1k
Visualization
eitanlees
152
17k
Designing Powerful Visuals for Engaging Learning
tmiket
1
500
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
11k
Believing is Seeing
oripsolob
1
190
The Power of CSS Pseudo Elements
geoffreycrofte
82
6.5k
Leo the Paperboy
mayatellez
8
2.1k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
Transcript
Next.js・microCMSで ポートフォリオサイトを作りかえて学んだこと ジャムジャム!!Jamstack_6【初心者歓迎LT会】 岡本梓沙 Next.js 初心者が! @azunyan_eng
自己紹介
自己紹介 2020年10月 2021年10月 現在 V 業務システム保守(React・TypeScript& V WEBアプリケーション開発(Vue.js・TypeScript& V ECサイトの開発・保守
etc... 2年目!
今日お話しすること
今日お話しすること 1. 作ったもの 2. Next.jsとは? 3. 学んだこと 4. 感想 5.
参考資料
1. 作ったもの 2. Next.jsとは? 3. 学んだこと 4. 感想 5. 参考資料
作ったもの、ちょっとお見せします。
1. 作ったもの 3. 学んだこと 4. 感想 5. 参考資料 2. Next.jsとは?
Next.jsとは? c ReactベースのフレームワークA c HTMLの生成方法が3種類A c HTMLの生成方法はページごとに選択できるA c pagesディレクトリ内にファイルを配置すると、そのファイル 名でアクセスできる!
リクエスト受取時 サーバ側 SSR (Server Side Rendering) サーバ側 ビルド時 SSG (Static
Site Generation) クライアント側 リクエスト受取時 CSR (Client Side Rendering) いつ? どこで?
1. 作ったもの 2. Next.jsとは? 4. 感想 5. 参考資料 3. 学んだこと
①どうやってデータを取ってくる? ②環境変数の書き方が2種類!? ③Google Fontsを適用したい!
1. 作ったもの 2. Next.jsとは? ②環境変数の書き方が2種類!? ③Google Fontsを適用したい! 4. 感想
5. 参考資料 3. 学んだこと ①どうやってデータを取ってくる?
getStaticProps関数を利用! SSGにおいて、外部からデータを取ってくる時に 利用する関数。 ①どうやってデータを取ってくる?
export await return = () => { = . ({
}); { : { } } } const const getStaticProps get async data client ENDPOINT_ARTICLES data endpoint: process env props articles: contents . . .
1. 作ったもの 2. Next.jsとは? ①どうやってデータを取ってくる? ③Google Fontsを適用したい! 4. 感想
5. 参考資料 3. 学んだこと ②環境変数の書き方が2種類!?
②環境変数の書き方が2種類!? 環境変数の書き方を間違えていた。 環境変数の書き方が2種類あった!
②環境変数の書き方が2種類!? REACT_APP_API_KEY REACT_APP_URL ・サーバ側で利用 ・クライアント側で利用 API_KEY NEXT_PUBLIC_URL
1. 作ったもの 2. Next.jsとは? ①どうやってデータを取ってくる? ②環境変数の書き方が2種類!? 4. 感想 5.
参考資料 3. 学んだこと ③Google Fontsを適用したい!
③Google Fontsを適用したい! index.htmlもないし、いつものheadタグってどこ...?? どこに<link>タグを書いたら良いのかわからん...!!
③Google Fontsを適用したい! Custom `Document`を利用t f <html>タグや<body>タグに変更を加えることができるr f クライアント側で動く処理を書くことはできない。
) } Document; export default < > < > <
= = /> < = = /> < = = /> </ > < > < /> < /> </ > </ > Html Head link link link Head body Main NextScript body Html rel href rel href crossOrigin href rel "preconnect" "https:/ /fonts.googleapis.com" "preconnect" "https:/ /fonts.gstatic.com" "https:/ /fonts.googleapis.com/css2?family=Forum&family=Noto+Serif+JP:wght@200&display=swap" "stylesheet" import from const return { Html, Head, Main, NextScript } Document = () => { ( 'next/document' pages/_document.js
1. 作ったもの 2. Next.jsとは? 3. 学んだこと 5. 参考資料 4. 感想
感想 " ページ遷移を手軽に設定できた " CSS Modulesがデフォルトで利用できる!(個人的な好み " ドキュメントやチュートリアルがわかりやすくて助かった!
1. 作ったもの 2. Next.jsとは? 3. 学んだこと 4. 感想 5. 参考資料
参考資料 Next.js 公式ドキュメント microCMS + Next.jsでJamstackブログを作ってみよう WEB+DB PRESS vol.123 p.43~p.73
ご清聴ありがとうございました!