Rumah >pembangunan bahagian belakang >tutorial php >Saya tidak boleh! Nextjs?
Keutamaan peribadi menentukan pilihan tindanan teknologi, ini perkara biasa! Saya secara peribadi tidak lebih suka Next.js hujah bahasa tunggalnya tidak terpakai kepada saya. Saya lebih suka mengembangkan dalam pelbagai bahasa.
Saya telah membangunkan banyak aplikasi React, tetapi sekarang saya tidak menggunakan React dengan kerap. Pada masa ini saya terutamanya menggunakan Go (Echo atau Fiber), Django dan Laravel (Go ialah bahasa kegemaran saya!).
Baru-baru ini saya perlu membina apl kecil, yang terdiri terutamanya daripada operasi CRUD, dengan beberapa fungsi dinamik... Saya mempertimbangkan untuk mencuba Next.js. Saya secara ringkas membina aplikasi dengan Next.js setahun yang lalu, jadi saya mempunyai pemahaman umum tentang rangka kerja itu.
Ia ternyata satu pengalaman yang menyakitkan!
Saya menghabiskan kira-kira sejam mencuba menggunakan: https://www.php.cn/link/b0eec27361a2a03d4480b560df531df7
Dokumentasi itu menyebalkan! Ia menganggap anda menggunakan Vercel. Saya hanya mahu menjalankannya secara tempatan.
Apa pun, saya memutuskan untuk mencubanya dari awal...
Saya mencipta projek Next.js kosong dengan hampir tiada apa-apa di dalamnya! Saya terpaksa menyediakan Drizzle secara manual dan malah menyalin-menampal kod daripada dokumentasi tidak begitu berkesan.
Saya menghadapi beberapa pepijat menjengkelkan yang saya tidak ingat sekarang, tetapi secara keseluruhannya saya perlu membaca log dan nyahpepijatnya sendiri, yang merupakan kabur pada ingatan saya.
Untuk berlaku adil, saya sudah berkarat, ini masalah teknikal saya.
Saya tidak begitu memahami maksud Next.js, ia hanyalah rangka kerja meta dengan penghala dan caching terbina dalam. Anda boleh menggunakan Inersia untuk penghalaan, melangkau semua persediaan yang membosankan, dan gunakan React seperti biasa.
Pengalaman saya sebelum ini menggunakan React dalam SPA membuatkan saya membenci SPA memang menyakitkan untuk berurusan dengan penghalaan dan Redux. Saya lebih suka menggunakan penghala belakang dan melakukan pengurusan keadaan minimum dalam React itu sendiri.
Next.js menyelesaikan masalah ini sedikit sebanyak, tetapi saya rasa ia tidak cukup lengkap dan terlalu digabungkan dengan Vercel.
Masa suntuk, saya perlu menyiapkan tugasan, tiada masa untuk risau. Mungkin saya akan mencuba Next.js sekali lagi pada masa hadapan, tetapi pada ketika itu, menyelesaikan projek dengan cepat adalah penting.
Dalam masa 5 minit saya membina panel pentadbir yang lengkap, termasuk pengesahan! Hanya jalankan beberapa arahan CLI.
Memandangkan Backpack menggunakan Laravel sebagai pangkalannya, membuat jadual pangkalan data adalah sangat mudah. Jalankan sahaja:
<code>php artisan make:model Project -m</code>
Ini menyediakan model dan fail migrasi untuk saya. Saya hanya perlu menambah medan pangkalan data saya dalam fail migrasi dan jalankan:
<code>php artisan migrate php artisan backpack:crud Project</code>
Dengan 3 arahan secara keseluruhan, saya mendapat antara muka CRUD yang boleh digunakan sepenuhnya dengan keupayaan carian dan isihan.
Seterusnya, saya perlu mengendalikan beberapa tugas latar belakang, seperti menghantar e-mel dan tugasan beratur untuk diproses kemudian.
<code>php artisan make:model Project -m</code>
Untuk menjadikan mekanisme giliran redis berfungsi secara normal, saya hanya memerlukan tugas Systemctl:
<code>php artisan migrate php artisan backpack:crud Project</code>
Sejujurnya, Laravel kadang -kadang membuat saya kesal kerana mereka terus menambah fungsi, menyebabkan kerangka menjadi sangat kembung sekarang.
inilah sebabnya saya suka gaya minimalis Next.js, tetapi saya fikir ia terlalu melampau kepada saya.
Rangka kerja harus dipakai sekurang -kurangnya dari router, lapisan pangkalan data dan giliran, kerana hampir semua aplikasi kompleks memerlukan fungsi ini.
ini bergantung pada pengalaman anda. Kemudahan yang dibawa oleh Laravel mungkin tidak selalu baik. Secara peribadi, sebelum Laravel muncul, saya telah membina sistem dan rangka kerja yang lebih tinggi dari awal, jadi semula roda itu agak membosankan. Apakah kepentingannya?
Atas ialah kandungan terperinci Saya tidak boleh! Nextjs?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!