Redux: Di mana "media bahagia" antara komponen pintar dan komponen bodoh?

Dibuat pada 19 Apr 2016  ·  3Komentar  ·  Sumber: reduxjs/redux

Saya telah menonton tutorial Dan's Redux di egghead dan ingat satu saran bahwa jika komponen induk tidak menggunakan beberapa data tetapi membutuhkannya hanya untuk diteruskan ke anak-anak - jangan lakukan itu. Gunakan connect untuk komponen anak yang membutuhkan data ini.

Saya suka saran ini karena saya benci melewatkan banyak data melalui alat peraga. Saya pikir ini adalah pendekatan yang umum digunakan tetapi baru-baru ini saya mengimplementasikan proyek "mini twitter" sebagai tugas tes ke perusahaan yang menggunakan redux dalam proyeknya dan itulah mengapa saya ingin bekerja di sana.

Tetapi kode saya ditolak karena "React-way terlalu memiliki maksimum komponen bodoh". Benarkah itu?
Ini kode saya jika seseorang ingin melihatnya https://bitbucket.org/amorphius/minitwitter/overview
Jadi, alasan kode ini dikenali sebagai kode buruk adalah karena terlalu banyak connect dalam kode.

Dimana media bahagia?

question

Komentar yang paling membantu

Kami biasa mengatakan bahwa memiliki komponen yang kurang terhubung lebih baik di versi dokumen sebelumnya tetapi saya tidak mengantisipasi seberapa besar kultus kargo yang akan terjadi. 😞 Ya, menghubungkan setiap komponen sering kali berlebihan, tetapi begitu juga dengan meletakkan semuanya di atas! Menghubungkan hanya demi mendapatkan dispatch secara khusus tidak berbahaya sehingga Anda tidak perlu merasa buruk untuk sering melakukannya.

Kode Anda terlihat baik-baik saja bagi saya. 👍

Semua 3 komentar

Kami biasa mengatakan bahwa memiliki komponen yang kurang terhubung lebih baik di versi dokumen sebelumnya tetapi saya tidak mengantisipasi seberapa besar kultus kargo yang akan terjadi. 😞 Ya, menghubungkan setiap komponen sering kali berlebihan, tetapi begitu juga dengan meletakkan semuanya di atas! Menghubungkan hanya demi mendapatkan dispatch secara khusus tidak berbahaya sehingga Anda tidak perlu merasa buruk untuk sering melakukannya.

Kode Anda terlihat baik-baik saja bagi saya. 👍

Terima kasih. Setidaknya saya sekarang memiliki argumen kuat bahwa kode saya baik-baik saja dan mungkin mendapatkan pekerjaan di perusahaan yang lebih baik :)

Tapi tetap saja saya tidak bisa membayangkan skenario di mana connect berlebihan. Bagaimana mengembangkan keterampilan ini untuk mengetahui aturan mana yang harus saya pecahkan baik lewat data dari kontrol orang tua yang tidak menggunakan data ini ke kontrol anak atau memiliki connect dalam kode (terutama jika itu membaca potongan kecil data dari toko)?

Jenis masalah apa yang akan muncul dengan banyak connect dalam aplikasi?

Proses pemberitahuan pelanggan Redux adalah loop sederhana yang menjalankan setiap panggilan balik pelanggan, jadi itu jelas O (n). Secara teori, jika panggilan balik pelanggan melakukan sesuatu yang kompleks, atau jika jumlah pelanggan bertambah _very_ besar, itu bisa menjadi masalah kinerja.

Dalam praktiknya, itu mungkin tidak terlalu menjadi perhatian. Saya menduga Anda harus memiliki beberapa ribu langganan aktif, dengan banyak tindakan dikirim dalam satu detik, sebelum secara realistis menjadi masalah. Saya tidak tahu tentang tolok ukur spesifik apa pun pada saat ini yang dapat saya tunjukkan untuk memverifikasi itu, meskipun (kecuali mungkin perbandingan MobX / Redux baru-baru ini terkait).

Secara keseluruhan, saya pikir Anda harus aman mengikuti pendekatan klasik "buat itu berhasil, perbaiki, buat cepat". Tulis kode yang membuat fitur aplikasi Anda berfungsi dengan baik. Lihat apa yang telah Anda tulis dan sesuaikan strukturnya jika perlu agar lebih masuk akal. Jika terasa lambat, ukur dan patokan, dan perbaiki bagian-bagian yang sebenarnya lambat.

Apakah halaman ini membantu?
0 / 5 - 0 peringkat