Pencapaian Zustand baru-baru ini sebanyak 49,000 bintang GitHub benar-benar luar biasa.
Lanskap pengurusan keadaan React telah mengalami perubahan ketara dalam beberapa tahun kebelakangan ini. Redux, yang pernah menjadi pemain dominan, secara beransur-ansur menjadi perpustakaan warisan, popularitinya semakin berkurangan.
Kejayaan Redux adalah pedang bermata dua. Ia muncul sebagai pemenang daripada "Flux Wars," menjadi lalai untuk React, terutamanya dalam era komponen berasaskan kelas. Walau bagaimanapun, kerumitannya membawa kepada penggunaan yang meluas walaupun dalam aplikasi yang tidak begitu diperlukan, menghasilkan kod boilerplate yang meluas untuk pengurusan negeri. Pendekatan yang lebih mesra pengguna, seperti Redux Toolkit, mungkin telah mengubah trajektorinya.
Zustand, diselenggarakan oleh Poimandres dengan Daishi Kato sebagai penyelenggara utama, adalah sebahagian daripada trio penyelesaian pengurusan negeri—Zustand, Jotai dan Valtio. Walaupun Valtio kurang menerima pakai, Jotai dan Zustand mewakili generasi baharu, masing-masing mempunyai ciri tersendiri.
Jotai, perpustakaan berasaskan atom yang diilhamkan oleh pengaturcaraan reaktif, menawarkan API minimalis dan boleh dikatakan alat berasaskan atom terbaik untuk React. Walau bagaimanapun, model berasaskan atomnya boleh membentangkan lengkung pembelajaran untuk pembangun yang terbiasa dengan struktur data yang lebih tradisional.
Di sinilah Zustand cemerlang. Rasanya seperti pengganti yang halus dan minimalis kepada Redux, menyepadukan keadaan dan tindakan dengan lancar, menyediakan sokongan TypeScript yang mantap dan menawarkan sistem middleware yang berkuasa lagi diperkemas. Perkara terakhir ini adalah penting; melanjutkan kefungsian selalunya diperlukan dan pendekatan perisian tengah Zustand lebih unggul daripada sistem Redux yang lebih kompleks.
Satu lagi kelebihan utama ialah pendekatan berbilang kedai Zustand, perubahan ketara daripada keadaan monolitik Redux. Ini membolehkan seni bina yang lebih bersih, memisahkan keadaan global daripada keadaan halaman/ciri tempatan, mengelakkan kerumitan gabungan pengurang besar. Pendekatan ini mengekalkan keadaan setempat di luar pepohon komponen React tanpa menggunakan verbositi dan kemungkinan kekeliruan konteks React.
Oleh itu, kejayaan Zustand tidak mengejutkan. Ia selaras dengan gaya pembangunan React yang intuitif sambil menawarkan alternatif yang lebih bersih kepada kerumitan penyelesaian pengurusan negeri yang lebih lama, malah mengatasi kesederhanaan yang dirasakan oleh konteks React.
Atas ialah kandungan terperinci Mengapakah Zustand berjaya dalam perang pengurusan negeri React?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!