Oleh kerana tindak balas adalah pengikatan data sehala, dan ciri paling penting mvvm ialah pengikatan data dua hala, rangka kerja mvvm memerlukan objek vm untuk memetakan paparan, tetapi bertindak balas tidak mempunyai vm dalam a deria tulen. Objek mempunyai sifat dan keadaan, jadi bertindak balas bukan rangka kerja mvvm.
Persekitaran pengendalian tutorial ini: Sistem Windows 10, bertindak balas versi 17.0.1, komputer Dell G3.
mvvm
Mula-mula faham maksud mvvm. vm bermaksud mod pandangan.
Jadi rangka kerja mvvm memerlukan objek vm untuk memetakan paparan.
Iaitu, apabila atribut objek vm berubah, bahagian paparan yang sepadan akan dikemas kini dengan sewajarnya. Yang lebih klasik ialah knockoutjs, di mana konsep utama ialah model paparan, pengiraan, templat paparan, dsb. Ya, sebenarnya terdapat banyak bayang-bayangnya dalam vue.
bertindak balas
Kemudian mari kita lihat tindak balas Ia tidak mempunyai objek vm dalam erti kata yang tulen, ia hanya mempunyai atribut dan keadaan.
Gunakan atribut dan keadaan untuk memetakan paparan. Jadi apakah perbezaan antara atribut dan keadaan dan vm? Secara peribadi, saya berpendapat bahawa objek vm akan dilayan sama rata tanpa mengira sama ada nilai itu dihantar dari luar atau ditakrifkan secara dalaman. Dalam banyak kes, terdapat mekanisme pengikatan dua hala Mungkin flex awal adalah menakjubkan, tetapi rangka kerja mvvm kemudiannya mempunyai konsep pengikatan dua hala. React, sebaliknya, menekankan kebolehubah atribut dan aliran data sehala. Keadaan dalaman dikawal secara dalaman.
Reka bentuk sedemikian mungkin lebih kompleks dari segi reka bentuk, tetapi ia menjadi lebih pasti dan lebih jelas dari segi penggunaan. Jika anda sudah biasa dengan React, menguruskan keadaan yang sesuai untuk komponen yang sesuai dan keadaan stratifikasi secara munasabah akan mengurangkan kerumitan aplikasi. Kemudian, redux mempunyai konsep yang sangat maju yang dipanggil komponen kontena dan komponen paparan tulen Jika anda memahami idea reka bentuk ini, anda boleh menumpukan perkara yang kompleks kepada sebilangan kecil komponen, dan kebanyakan komponen akan menjadi komponen paparan tulen, seterusnya mengurangkan kerumitan. daripada permohonan itu.
Salah satu ciri MVVM yang paling penting: pengikatan dua hala.
React tidak mempunyai ini, ia adalah pengikatan data sehala.
React ialah perpustakaan aliran data sehala dengan paparan dipacu keadaan.
State --> View --> New State --> New View
Pembelajaran yang disyorkan: "tutorial video bertindak balas"
Atas ialah kandungan terperinci Mengapa bertindak balas bukan rangka kerja mvvm. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!