読者コミュニティ|Next.jsとLaravelで2ちゃんねるっぽいアプリを作る
本の感想や質問をお気軽にコメントしてください。
こんにちは。
laravel と Next.js の勉強のため購入しました。
シンプルにまとまってて読みやすかったです。
Laravel 10 (現状最新)でもどうやら動いていそうでした。
CI/CD、デプロイまわりも楽しみにしています。
下記つまった点です。もし可能であれば更新いただけると幸いです。
chapter 5 フロントエンドにライブラリを導入するとエラーになる
TypeError: (0 , react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV) is not a function
このエラーが出て動かなくなってしまいました。
対処としてこの記事と同様に 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以下の書き方になっていますね!
こちら後日編集させていただきます!
とてもわかりやすい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ユーザーに適切な権限を付与した上でビルドすることが可能かと思います。(セキュリティリスクは上がりますのでご注意ください)