Open8

読者コミュニティ|Next.jsとLaravelで2ちゃんねるっぽいアプリを作る

ぽんたぽんた

本の感想や質問をお気軽にコメントしてください。

https://zenn.dev/ponta/books/95e0984aa9dcbd

SadoSado

ぽんたさん
はじめまして、Sadoと申します。

購入させて頂きました!
現在個人開発でLaravel×Next.jsで構築して進めてまして参考にさせて頂きたいと思います!

突然で恐縮ですが、ぽんたさんがもしよければ、色々と情報交換させて頂けたら嬉しいです!
Twitterフォローしましたので、メッセージできたら嬉しいです🙇

ぽんたぽんた

Sadoさん

購入ありがとうございます!
メッセージはいつでもどうぞー👍

SadoSado

ご返信とフォロバありがとうございます!

Twitterのメッセージ送れないようなのですが、開放して頂けると嬉しいかもですm(_ _)m

katsurenkatsuren

こんにちは。
laravel と Next.js の勉強のため購入しました。
シンプルにまとまってて読みやすかったです。

Laravel 10 (現状最新)でもどうやら動いていそうでした。
CI/CD、デプロイまわりも楽しみにしています。

下記つまった点です。もし可能であれば更新いただけると幸いです。

chapter 5 フロントエンドにライブラリを導入するとエラーになる

TypeError: (0 , react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV) is not a function
このエラーが出て動かなくなってしまいました。
https://weev.media/article/158
対処としてこの記事と同様に docker-compose.yml で NODE_ENV: development をして docker を再起動しました。
いったん勉強としては問題ないのですが dev モードでしか動かないとなると運用ではあまりよろしくなさそうな気がするので、このあたりの回避方法なども記載いただけると嬉しいです。

リンクの書き方が Next.js 13 で変わった

Error: Invalid <Link> with <a> child. Please remove <a> or use <Link legacyBehavior>
各フロントエンドでリンクがあるとこのエラーで動かなくなります。
エラーの通り <Link> タグの中の <a> タグを除けば良いのですが、記事もそれに合わせてアップデートしてもらえると親切かと思います。

ちなみに、記事のコマンドはコピペで

docker compose run --rm frontend npx create-next-app@12.3 .

としてはいますが 13.4.1 がインストールされるようです。

ぽんたぽんた

katsurenさんコメントありがとうございます!

chapter 5 フロントエンドにライブラリを導入するとエラーになる

こちらエラーを再現することができませんでした、、、
環境はM1 MacBook Airです。もしかすると環境依存で起きているエラーかもしれません。

リンクの書き方が Next.js 13 で変わった

リンクの書き方がご指摘のとおり、Next.12以下の書き方になっていますね!
こちら後日編集させていただきます!

DabuDabu

とてもわかりやすいBOOKありがとうございます...!

初歩的な質問で申し訳ないのですが、WSL2 環境とLinux環境にて docker compose run --rm backend composer ..... などで生成したファイルの権限がrootで生成されるため、Permission error が出てしまい、毎回 コンテナ内で chmod -R 777 xxxx としていました。

macでは問題なく実行できたのですが、これらを正すベストプラクティスがあれば教えていただきたいです。

ぽんたぽんた

Dabuさん

コメントありがとうございます!

WSL2 環境とLinux環境

この環境が再現できないので正確なお答えが難しい状況です。。。

rootユーザーで実行されてしまうということでしたら

RUN chown -R root:root /var/www
RUN chmod -R 777 /var/www

Dockerfileの中でrootユーザーに適切な権限を付与した上でビルドすることが可能かと思います。(セキュリティリスクは上がりますのでご注意ください)