web-2021のNext.jsにおける実装
App Routerがベータでなくなること (公式ドキュメントを参照)解決プレビュー機能解決APIルート:解決route.ts
でのres.revalidate
ができず無駄にpages/api
がある
- NetlifyがOn-Demand ISRに対応すること
- 詳細は #31 参照
- 殆どの部分をReact Server Componentで描画するようになりました
- 最終的にはNetlify次第ですが、パフォーマンス向上が期待できます
- 一覧で、本文の冒頭ではなく、Twitter用コメントを概要として使うようにしました
- 通信量削減のためです
記事投稿後、ビルドをトリガーする必要がなくなり、待ち時間がゼロになりましたNetlifyの対応待ち公開直後は404になる場合があります一覧の2ページ目以降の更新がすぐに行われない場合があります
- 過去何年間の部員まで表示するか、環境変数で変更可能になりました
- フォームのバリデーションが細かくなりました
Netlifyに任せてください。
key | 必須/任意 | default | 説明 |
---|---|---|---|
MICROCMS_REQUESTS_PER_SECOND |
任意 | 30 | microCMSのGET APIの秒間呼び出し最大回数 |
MICROCMS_MAX_GET_COUNT |
任意 | 1000 | 最大記事数。ローカルで動作確認時に下げることでビルドを短縮できる |
MICROCMS_SERVICE_DOMAIN |
必須 | microCMSのAPIのサブドメイン部分 | |
MICROCMS_API_KEY |
必須 | microCMSのAPIキー | |
MICROCMS_ARTICLE_WEBHOOK_SECRET |
必須 | ランダムな文字列をmicroCMSのカスタム通知で設定 | |
MICROCMS_MEMBER_WEBHOOK_SECRET |
必須 | ランダムな文字列をmicroCMSのカスタム通知で設定 | |
MICROCMS_NEWS_WEBHOOK_SECRET |
必須 | ランダムな文字列をmicroCMSのカスタム通知で設定 | |
SLACK_NOTICE_WEBHOOK_URL |
必須 | 広報チャンネルのWebhook URL | |
GOOGLE_FORM_ID_CONTACT |
必須 | お問い合わせGoogleフォームのID | |
GOOGLE_FORM_ID_JOIN |
必須 | 入部GoogleフォームのID | |
GOOGLE_FORM_MOCK |
任意 | false | Googleフォーム動作をモックするか |
NEXT_PUBLIC_GTM_ID |
任意 | アナリティクスを埋め込んだ Tag ManagerのコンテナID なお、ページ遷移を正しく取得するには、GA4において「拡張計測」をONにする必要がある(ソース) |
|
NEXT_PUBLIC_ARTICLE_COUNT_PER_PAGE |
任意 | 9 | 一覧における1ページあたりの記事数 |
NEXT_PUBLIC_MAX_MEMBER_YEARS |
任意 | 8 | 部員紹介で、歴代の部員全員を載せるとビルドに時間がかかる。 そのため、この環境変数で対象の年度数を絞れる |
pnpm i
pnpm dev
- Ant Design Icons
- MIT License.
- Heroicons
- MIT License.