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
37
「わたし色」の見方で拓く世界
azunyan
0
28
ちゃんとSvelte, Hello Worldした!
azunyan
0
73
最近取り組んでいることについて喋ってみる
azunyan
0
22
フロントエンドエンジニアが関数型プログラミングに出会った話
azunyan
0
120
TECH WOMAN KANSAIの 取り組みと今後~2024年の振り返りと2025年へ~
azunyan
0
100
Go初心者が開発やってみた!
azunyan
1
570
デブサミウーマン2023 アウトプットって何が良いの?
azunyan
0
1.3k
個人的に楽しかった実装2022
azunyan
0
150
Other Decks in Programming
See All in Programming
The NotImplementedError Problem in Ruby
koic
1
710
Webフレームワークの ベンチマークについて
yusukebe
0
160
A2UI という光を覗いてみる
satohjohn
1
130
Oxcを導入して開発体験が向上した話
yug1224
4
310
Hunting Vulnerabilities in Symfony with LLMs
vinceamstoutz
0
540
Dataformのリポジトリを立ち上げるときにまずやること / dataform-day0-2026
snhryt
0
150
キャリア迷子上等 ─ "ない道"は自分で作ればいい
16bitidol
3
2k
LLM Plugin for Node-REDの利用方法と開発について
404background
0
170
並列実装の現場、2ヶ月間実務でAIを使い倒したAIもPCも私も限界が近い
ming_ayami
0
120
生成AI時代にこそ効くGo | Why Go Works in the Age of Generative AI
mom0tomo
8
3.2k
Lemonade + Foundry Toolkit でお手軽アプリ開発
seosoft
1
320
Language Server 使ってる? 〜VSCode と Zed の場合〜 / Are you using a Language Server? ~For VS Code and Zed~
handlename
0
780
Featured
See All Featured
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.7k
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
190
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
0
1.7k
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3.2k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
360
30k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
3.4k
Producing Creativity
orderedlist
PRO
348
40k
Scaling GitHub
holman
464
140k
Mobile First: as difficult as doing things right
swwweet
225
10k
Pawsitive SEO: Lessons from My Dog (and Many Mistakes) on Thriving as a Consultant in the Age of AI
davidcarrasco
0
160
Automating Front-end Workflow
addyosmani
1370
210k
Embracing the Ebb and Flow
colly
88
5.1k
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
ご清聴ありがとうございました!