Rumah >hujung hadapan web >tutorial js >Vue rendah diri Menjadi Reaksi? (Sejujurnya saya keliru.)
Saya sudah lama peminat tegar Vue. Saya masih ingat apabila saya mula menggunakannya, kesederhanaan adalah menghirup udara segar, terutamanya berbanding dengan projek React yang saya telah bergelut dengannya. Vue 2 merasakan ia mempunyai falsafah yang jelas: mudah didekati, berterus terang dan biarkan pembangun menumpukan pada aplikasi, bukan rangka kerja itu sendiri.
Tetapi sejak kebelakangan ini, saya telah menghabiskan lebih banyak masa dalam Vue 3, dan secara jujur? Saya agak keliru. Saya mula melihat beberapa corak yang terasa sangat biasa, dan bukan dengan cara yang baik. Saya seperti mula melihat Vue 3... perlahan-lahan berubah menjadi sesuatu yang menyerupai React.
Sekarang, saya tidak cuba untuk menyerang Vue 3. Ia mempunyai banyak ciri yang hebat, dan API gubahan adalah berkuasa. Tetapi saya tidak dapat menghilangkan perasaan ini bahawa kami kehilangan beberapa prinsip teras yang menjadikan Vue begitu unik pada mulanya.
"Vue Way": Apa yang Kami Suka
Mari menjadi nyata. Sebahagian besar daya tarikan Vue, terutamanya Vue 2, adalah kemudahan penggunaannya. Anda mempunyai API Pilihan yang mudah. Templat adalah kegembiraan untuk digunakan; mudah dan intuitif. Anda boleh memutarkan apl Vue dengan cepat tanpa perlu mengharungi konfigurasi yang rumit. Ekosistem dirasakan boleh diurus; anda mempunyai penghala yang kukuh (vue-router) dan corak pengurusan keadaan (vuex), dan itu sahaja! Anda boleh menjadi sangat cekap menggunakan Vue.
Berikut ialah contoh mudah komponen Vue 2:
<template> <div> <p>{{ message }}</p> <button @click="reverseMessage">Reverse</button> </div> </template> <script> export default { data() { return { message: "Hello Vue 2!", }; }, methods: { reverseMessage() { this.message = this.message.split("").reverse().join(""); }, }, }; </script>
Mudah. Langsung. Mudah difahami. Ini adalah janji Vue.
Peralihan: Apabila Perkara Mula Terasa... Berbeza
Tetapi dengan Vue 3, perkara mula berubah. Pengenalan API Komposisi, walaupun berkuasa, membawa model mental yang sama sekali berbeza ke meja. Rasanya... abstrak. Tiba-tiba, tugas mudah kini memerlukan lebih banyak kod. Anda boleh melakukan perkara yang sama dalam kedua-dua API, tetapi dalam sesetengah situasi, kerumitan itu terasa tidak wajar.
Berikut ialah contoh komponen yang sama dalam Vue 3, menggunakan API Komposisi:
<template> <div> <p>{{ message }}</p> <button @click="reverseMessage">Reverse</button> </div> </template> <script setup> import { ref } from 'vue'; const message = ref("Hello Vue 3!") function reverseMessage() { message.value = message.value.split("").reverse().join(""); } </script>
Ia melakukan perkara yang sama, tetapi... tidakkah rasanya lebih banyak kerja? Lihatlah bagaimana walaupun pembolehubah mesej ringkas kini memerlukan rujukan dan memerlukan nilai untuk mengakses kandungannya! Ia agak banyak untuk sesuatu yang sebelum ini mudah.
Dan ini bukan sahaja API komposisi. Ruang pengurusan negeri juga menjadi lebih rumit. Kami kini mempunyai Pinia, yang hebat, tetapi kini kami mempunyai pilihan lain untuk dibuat. Ia mula merasakan kerumitan "seperti bertindak balas", di mana tiada satu cara pun untuk melakukan sesuatu dan pembangun perlu membuat banyak keputusan sebelum mengekod.
Saya juga mula melihat beberapa projek Vue 3 yang merasakan ia telah hilang sepenuhnya, dengan persediaan yang rumit dan lapisan abstraksi untuk projek yang mungkin hanya memerlukan asas. Ia seperti cara React di mana anda akan melihat dunia hello yang dilakukan dengan 10 perpustakaan.
Ekosistem & Pilihan yang Berkembang
Saya tidak dapat mengelak daripada melihat pertumbuhan ekosistem Vue. Alat dan perpustakaan baharu nampaknya sentiasa muncul, yang menarik dan menggembirakan.
Ini membuatkan saya terfikir tentang perasaan yang ramai daripada kita pembangun React mempunyai: "lumpuh pilihan." Dan saya mula merasakannya dengan Vue 3:
Perlukah saya menggunakan Pinia atau Vuex?
Manakah set utiliti ujian yang harus saya gunakan?
Adakah saya patut mencipta segala-galanya dari awal atau menggunakan perpustakaan komponen yang besar?
Ini adalah sesuatu yang saya fikir saya tinggalkan apabila saya berpindah ke Vue...
Adakah Saya Gila?
Saya tahu, saya tahu. Mungkin saya hanya kehilangan sesuatu. Mungkin semua perubahan ini diperlukan untuk Vue berkembang dan menyesuaikan diri. Mungkin hanya saya dan pilihan saya.
Tetapi saya tidak dapat mengelak perasaan ini bahawa tarikan utama Vue—kesederhanaan, kejelasannya, sifat "hanya berfungsi"—sedang terhakis sedikit. Saya bimbang bahawa kita perlahan-lahan tetapi pasti membina ekosistem Vue yang kelihatan dan berasa lebih seperti React. Ia mula berasa seperti kita kehilangan identiti unik Vue.
Jadi, apa pendapat anda? Adakah saya keseorangan dalam hal ini? Adakah anda melihat trend yang sama? Saya ingin mendengar perspektif anda. Mungkin saya hanya perlukan seseorang untuk meyakinkan saya bahawa saya salah, atau mungkin kita semua merasakan perkara yang sama.
Jom bincang dalam komen!
Atas ialah kandungan terperinci Vue rendah diri Menjadi Reaksi? (Sejujurnya saya keliru.). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!