Dalam jawatan kedua siri ini, kita akan meningkatkan pemahaman kita tentang Redux dan membina di atas apa yang sudah kita ketahui. Kami akan bermula dengan membuat aplikasi Redux yang realistik -senarai kenalan -yang lebih kompleks daripada kaunter asas. Ini akan membantu anda mengukuhkan pemahaman anda tentang kedai tunggal dan konsep pengurangan yang saya diperkenalkan dalam tutorial sebelumnya. Kemudian kami akan bercakap tentang mengikat keadaan Redux anda dengan aplikasi React dan amalan terbaik yang perlu anda pertimbangkan semasa membuat projek dari awal.
Walau bagaimanapun, tidak mengapa jika anda belum membaca jawatan pertama -anda masih boleh mengikuti sepanjang anda mengetahui asas -asas Redux. Kod untuk tutorial boleh didapati di repo, dan anda boleh menggunakannya sebagai titik permulaan.
Membuat senarai kenalan menggunakan Redux
Kami akan membina senarai hubungan asas dengan ciri -ciri berikut:
- Paparkan semua kenalan
- Cari kenalan
- mengambil semua kenalan dari pelayan
- Tambahkan kenalan baru
- Tolak data kenalan baru ke pelayan
Inilah permohonan kami akan kelihatan seperti:


Meliputi segala -galanya dalam satu peregangan adalah sukar. Oleh itu, dalam jawatan ini kita akan memberi tumpuan kepada hanya bahagian Redux untuk menambah kenalan baru dan memaparkan kenalan yang baru ditambah. Dari perspektif Redux, kita akan memulakan keadaan, mewujudkan kedai, menambah pengurangan dan tindakan, dll.
Dalam tutorial seterusnya, kami akan belajar bagaimana untuk menyambungkan React dan Redux dan menghantar tindakan Redux dari front-end React. Di bahagian akhir, kami akan mengalihkan tumpuan kami ke arah membuat panggilan API menggunakan Redux. Ini termasuk mengambil kenalan dari pelayan dan membuat permintaan pelayan sambil menambah kenalan baru. Selain itu, kami juga akan membuat ciri bar carian yang membolehkan anda mencari semua kenalan yang ada.
Buat lakaran pokok negeri
Anda boleh memuat turun aplikasi demo React-Redux dari repositori GitHub saya. Klon repo dan gunakan cawangan V1 sebagai titik permulaan. Cawangan V1 sangat mirip dengan template create-react-app. Satu -satunya perbezaan ialah saya telah menambah beberapa direktori kosong untuk mengatur Redux. Inilah struktur direktori.
.<br> ├── Pakej.json<br> ├── awam<br> ├── Readme.md<br> ├── Src<br> │ ├── Tindakan<br> │ ├── App.js<br> │ ├── Komponen<br> │ ├── bekas<br> │ ├── index.js<br> │ ├── Reducers<br> │ └── Kedai<br> └── benang<br>
Sebagai alternatif, anda boleh membuat projek baru dari awal. Sama ada cara, anda perlu memasang boilerplate reaksi asas dan redux sebelum anda boleh memulakan.
Adalah idea yang baik untuk mempunyai lakaran kasar pokok negeri terlebih dahulu. Pada pendapat saya, ini akan menjimatkan banyak masa dalam jangka masa panjang. Berikut adalah lakaran kasar pokok keadaan yang mungkin.
const initialState = {<br> Kenalan: {<br> senarai kenalan: [],<br> NewContact: {<br> Nama: '',<br> nama keluarga: '',<br> E -mel: '',<br> Alamat: '',<br> Telefon: ''<br> },<br> ui: {<br> // Semua keadaan berkaitan UI di sini. contohnya: Sembunyikan/tunjukkan modal,<br> // kotak semak togol dll.<br> }<br> }<br> }<br><br>
Kedai kami perlu mempunyai dua hartanah -Combinereducers yang membolehkan anda membuat pelbagai pengurangan dan kemudian menggabungkannya ke dalam fungsi pengurangan tunggal. Fungsi Combinereducers meningkatkan kebolehbacaan. Oleh itu, saya akan membahagikan pengurangan ke dalam dua cangkuk yang digunakan untuk menguruskan keadaan peringkat komponen dalam aplikasi React anda.
Dalam semangat yang sama, Redux telah memperkenalkan beberapa cangkuk yang berbeza untuk membolehkan kita melaksanakan tugas -tugas biasa (menghantar tindakan, mendapatkan keadaan, dan sebagainya) di dalam komponen berfungsi semasa menulis kod minimum. Cangkuk ini mula -mula ditambah dalam React Redux 7.1. Sebagai contoh, untuk menghantar tindakan dan mendapatkan pokok negeri, Redux menyediakan cangkuk berikut:
- UseSelector: Dapatkan pokok negeri atau cawangan statistik
Sekarang, dengan cangkuk ini, kita boleh refactor kod di atas untuk ini sebaliknya:
// import lain di sini<br><br> // mengimport cangkuk redux<br> import {usedIspatch, useselector} dari 'react-redux'<br><br> // mengembalikan fungsi penghantaran dari cangkuk<br> const dispatch = usedIsPatch ()<br><br> // panggilan getstore () untuk membuat objek kedai<br> const store = getStore ();<br><br> // Dapatkan Pokok Negeri Menggunakan UseSelector<br> const state = useselector (state => state)<br><br> // Mendapat cawangan UI negeri<br> const ui = useselector (state => state.ui)<br><br> / * mengembalikan iscontactformHidden pulangan palsu */<br> penghantaran (toggleContactForm ());<br> / * mengembalikan iscontactformHidden pulangan palsu */<br> penghantaran (toggleContactForm ());<br> / * mengemas kini keadaan kenalan. Objek NewContact */<br> Dispatch (HandleInputChange ('E -mel', 'manjunath@example.com'))<br><br> berhenti berlangganan ();<br>
Jika semuanya berfungsi dengan betul, anda harus melihatnya di konsol pemaju.

Itu sahaja! Dalam konsol pemaju, anda dapat melihat kedai Redux yang dilog masuk, jadi anda dapat melihat bagaimana ia berubah selepas setiap tindakan.
Ringkasan
Kami telah mencipta aplikasi Redux yang terdedah untuk aplikasi senarai kenalan hebat kami. Kami belajar tentang pengurangan, memisahkan pengurangan untuk menjadikan struktur aplikasi kami lebih bersih, dan menulis tindakan untuk bermutasi kedai.
Menjelang akhir jawatan, kami melanggan kedai menggunakan kaedah store.subscribe()
. Secara teknikal, ini bukan cara terbaik untuk menyelesaikan sesuatu jika anda akan menggunakan React dengan Redux. Terdapat lebih banyak cara yang dioptimumkan untuk menyambungkan front-end React dengan Redux. Kami akan melindungi mereka dalam tutorial seterusnya.
Atas ialah kandungan terperinci Bermula dengan Redux: Belajar dengan contoh. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

JavaScript adalah di tengah -tengah laman web moden kerana ia meningkatkan interaktiviti dan dinamik laman web. 1) Ia membolehkan untuk menukar kandungan tanpa menyegarkan halaman, 2) memanipulasi laman web melalui Domapi, 3) menyokong kesan interaktif kompleks seperti animasi dan drag-and-drop, 4) mengoptimumkan prestasi dan amalan terbaik untuk meningkatkan pengalaman pengguna.

C dan JavaScript mencapai interoperabilitas melalui webassembly. 1) Kod C disusun ke dalam modul WebAssembly dan diperkenalkan ke dalam persekitaran JavaScript untuk meningkatkan kuasa pengkomputeran. 2) Dalam pembangunan permainan, C mengendalikan enjin fizik dan rendering grafik, dan JavaScript bertanggungjawab untuk logik permainan dan antara muka pengguna.

JavaScript digunakan secara meluas di laman web, aplikasi mudah alih, aplikasi desktop dan pengaturcaraan sisi pelayan. 1) Dalam pembangunan laman web, JavaScript mengendalikan DOM bersama -sama dengan HTML dan CSS untuk mencapai kesan dinamik dan menyokong rangka kerja seperti JQuery dan React. 2) Melalui reaktnatif dan ionik, JavaScript digunakan untuk membangunkan aplikasi mudah alih rentas platform. 3) Rangka kerja elektron membolehkan JavaScript membina aplikasi desktop. 4) Node.js membolehkan JavaScript berjalan di sisi pelayan dan menyokong permintaan serentak yang tinggi.

Python lebih sesuai untuk sains data dan automasi, manakala JavaScript lebih sesuai untuk pembangunan front-end dan penuh. 1. Python berfungsi dengan baik dalam sains data dan pembelajaran mesin, menggunakan perpustakaan seperti numpy dan panda untuk pemprosesan data dan pemodelan. 2. Python adalah ringkas dan cekap dalam automasi dan skrip. 3. JavaScript sangat diperlukan dalam pembangunan front-end dan digunakan untuk membina laman web dinamik dan aplikasi satu halaman. 4. JavaScript memainkan peranan dalam pembangunan back-end melalui Node.js dan menyokong pembangunan stack penuh.

C dan C memainkan peranan penting dalam enjin JavaScript, terutamanya digunakan untuk melaksanakan jurubahasa dan penyusun JIT. 1) C digunakan untuk menghuraikan kod sumber JavaScript dan menghasilkan pokok sintaks abstrak. 2) C bertanggungjawab untuk menjana dan melaksanakan bytecode. 3) C melaksanakan pengkompil JIT, mengoptimumkan dan menyusun kod hot-spot semasa runtime, dan dengan ketara meningkatkan kecekapan pelaksanaan JavaScript.

Aplikasi JavaScript di dunia nyata termasuk pembangunan depan dan back-end. 1) Memaparkan aplikasi front-end dengan membina aplikasi senarai TODO, yang melibatkan operasi DOM dan pemprosesan acara. 2) Membina Restfulapi melalui Node.js dan menyatakan untuk menunjukkan aplikasi back-end.

Penggunaan utama JavaScript dalam pembangunan web termasuk interaksi klien, pengesahan bentuk dan komunikasi tak segerak. 1) kemas kini kandungan dinamik dan interaksi pengguna melalui operasi DOM; 2) pengesahan pelanggan dijalankan sebelum pengguna mengemukakan data untuk meningkatkan pengalaman pengguna; 3) Komunikasi yang tidak bersesuaian dengan pelayan dicapai melalui teknologi Ajax.

Memahami bagaimana enjin JavaScript berfungsi secara dalaman adalah penting kepada pemaju kerana ia membantu menulis kod yang lebih cekap dan memahami kesesakan prestasi dan strategi pengoptimuman. 1) aliran kerja enjin termasuk tiga peringkat: parsing, penyusun dan pelaksanaan; 2) Semasa proses pelaksanaan, enjin akan melakukan pengoptimuman dinamik, seperti cache dalam talian dan kelas tersembunyi; 3) Amalan terbaik termasuk mengelakkan pembolehubah global, mengoptimumkan gelung, menggunakan const dan membiarkan, dan mengelakkan penggunaan penutupan yang berlebihan.


Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

ZendStudio 13.5.1 Mac
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver Mac版
Alat pembangunan web visual

VSCode Windows 64-bit Muat Turun
Editor IDE percuma dan berkuasa yang dilancarkan oleh Microsoft

Muat turun versi mac editor Atom
Editor sumber terbuka yang paling popular

SecLists
SecLists ialah rakan penguji keselamatan muktamad. Ia ialah koleksi pelbagai jenis senarai yang kerap digunakan semasa penilaian keselamatan, semuanya di satu tempat. SecLists membantu menjadikan ujian keselamatan lebih cekap dan produktif dengan menyediakan semua senarai yang mungkin diperlukan oleh penguji keselamatan dengan mudah. Jenis senarai termasuk nama pengguna, kata laluan, URL, muatan kabur, corak data sensitif, cangkerang web dan banyak lagi. Penguji hanya boleh menarik repositori ini ke mesin ujian baharu dan dia akan mempunyai akses kepada setiap jenis senarai yang dia perlukan.
