{"id":52760,"date":"2025-01-22T15:03:18","date_gmt":"2025-01-22T08:03:18","guid":{"rendered":"https:\/\/www.rumahweb.com\/journal\/?p=52760"},"modified":"2025-01-22T15:23:14","modified_gmt":"2025-01-22T08:23:14","slug":"redux-adalah","status":"publish","type":"post","link":"https:\/\/www.rumahweb.com\/journal\/redux-adalah\/","title":{"rendered":"Apa Itu Redux? Pengertian, Manfaat, Istilah dan Cara Install"},"content":{"rendered":"\n<p>Redux adalah salah satu <em>tools<\/em> populer yang digunakan untuk mengelola <em>state <\/em>atau data dalam aplikasi, terutama di aplikasi berbasis JavaScript seperti <a href=\"https:\/\/www.rumahweb.com\/journal\/react-js-adalah\/\" target=\"_blank\" rel=\"noopener\" title=\"reactjs adalah\">React<\/a>.\u00a0Bagi pemula, konsep Redux mungkin terdengar rumit, tapi sebenarnya sangat bermanfaat untuk membuat aplikasi lebih terstruktur dan mudah dikelola.\u00a0<\/p>\n\n\n\n\n\n<p>Dalam artikel ini, Rumahweb akan membahas tentang apa itu Redux, manfaatnya, dan cara untuk menginstalnya. Yuk, kita pelajari bersama!<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Apa Itu Redux?<\/h2>\n\n\n\n<p>Redux pertama kali diperkenalkan pada tahun 2015 oleh Dan Abramov dan Andrew Clark. Tools ini dirancang untuk membantu para developer mengelola data (<em>state<\/em>) dalam aplikasi agar lebih terorganisir.<\/p>\n\n\n\n<p>Secara sederhana, Redux adalah sebuah <em>state management library<\/em> yang digunakan untuk menyimpan dan mengelola data dalam aplikasi <em>JavaScript<\/em>. Redux bekerja seperti &#8220;pusat penyimpanan data&#8221; (<em>store<\/em>) dan membuat aplikasi menjadi lebih rapi dan mudah diatur, terutama ketika aplikasi tersebut semakin besar dan kompleks.<\/p>\n\n\n\n<p>Untuk mempermudah pemahaman anda, kami akan menggunakan analogi berikut. Bayangkan, Redux seperti loker besar di sekolah yang digunakan oleh semua murid. Setiap murid (komponen aplikasi) dapat menyimpan atau mengambil barang (data) dari loker tersebut, tapi mereka harus mengikuti aturan tertentu, seperti memberikan kunci (<em>action<\/em>) kepada penjaga loker (<em>reducer<\/em>). <\/p>\n\n\n\n<p>Dengan cara ini, semua barang tersimpan di satu tempat (<em>store<\/em>), sehingga lebih mudah diatur dan setiap murid tahu ke mana mereka harus pergi untuk mengambil atau menyimpan sesuatu. Jadi, Redux adalah solusi untuk menjaga alur data dalam aplikasi agar tetap jelas, terorganisir, dan mudah dikelola.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Manfaat<\/h2>\n\n\n\n<p>Redux sangat bermanfaat untuk mengelola data (<em>state<\/em>) dalam aplikasi, terutama jika aplikasi memiliki banyak komponen dan data yang saling terkait.&nbsp;<\/p>\n\n\n\n<p>Dengan Redux, data dapat disimpan di satu tempat (<em>store<\/em>) sehingga lebih terorganisir, mudah diakses, dan diubah tanpa harus saling &#8220;menghubungkan&#8221; komponen secara langsung. Ini membuat aplikasi lebih mudah di-<em>manage<\/em>, mengurangi <em>bug<\/em>, dan mempermudah <em>developer <\/em>dalam <em>tracking<\/em> perubahan data.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Istilah-Istilah dalam Redux<\/h2>\n\n\n\n<p>Berikut adalah beberapa istilah penting dalam Redux yang perlu diketahui, beserta penjelasan sederhananya agar mudah dipahami:<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">1. State<\/h3>\n\n\n\n<p><em>State<\/em> adalah tempat penyimpanan data di aplikasi. Di Redux, <em>state <\/em>adalah objek yang menyimpan seluruh data yang dibutuhkan oleh aplikasi.\u00a0<\/p>\n\n\n\n<p>Contohnya, seperti aplikasi toko online, maka <em>state <\/em>bisa berisi informasi seperti daftar produk, keranjang belanja, dan data pengguna yang sedang <em>login<\/em>.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">2. Action<\/h3>\n\n\n\n<p><em>Action <\/em>adalah sebuah objek yang memberitahu Redux apa yang ingin dilakukan atau diubah di <em>state<\/em>. Selain itu, Action ini seperti &#8220;surat perintah&#8221; yang berisi informasi tentang perubahan yang akan terjadi.<\/p>\n\n\n\n<p>Contohnya, jika pengguna menambahkan produk ke keranjang, maka <em>action <\/em>bisa berupa { type: &#8220;ADD_TO_CART&#8221;, payload: { productId: 1 } }. Di sini, type adalah jenis aksi, dan <em>payload <\/em>adalah data tambahan yang dibutuhkan.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">3. Reducer<\/h3>\n\n\n\n<p><em>Reducer <\/em>adalah fungsi yang bertugas menerima <em>action <\/em>dan <em>state <\/em>sebelumnya, lalu menghasilkan <em>state <\/em>baru. Dalam fungsinya, <em>reducer <\/em>tidak boleh mengubah <em>state <\/em>secara langsung, melainkan menciptakan salinan <em>state <\/em>baru dengan perubahan yang diminta.<\/p>\n\n\n\n<p>Contohnya, jika ada action &#8220;ADD_TO_CART&#8221;, <em>reducer <\/em>akan menambahkan produk ke dalam daftar keranjang tanpa mengubah data original secara langsung.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">4. Store<\/h3>\n\n\n\n<p><em>Store <\/em>adalah tempat utama atau &#8220;pusat&#8221; yang menyimpan seluruh <em>state <\/em>aplikasi dan mengelola perubahan <em>state <\/em>berdasarkan <em>action<\/em>.<\/p>\n\n\n\n<p>Ilustrasinya, <em>store <\/em>seperti gudang utama yang menyimpan semua data aplikasi, dan semua komponen aplikasi bisa mengambil atau memperbarui data dari gudang ini.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">5. Dispatch<\/h3>\n\n\n\n<p><em>Dispatch <\/em>adalah cara untuk mengirimkan <em>action <\/em>ke <em>store<\/em> agar Redux tahu apa yang harus dilakukan (misalnya, mengubah <em>state<\/em>).<\/p>\n\n\n\n<p>Contohnya, ketika pengguna menekan tombol &#8220;Tambah ke Keranjang&#8221;, aplikasi akan &#8220;dispatch&#8221; action seperti dispatch({ type: &#8220;ADD_TO_CART&#8221;, payload: { productId: 1 } })<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">6. Selector<\/h3>\n\n\n\n<p><em>Selector <\/em>adalah fungsi yang digunakan untuk mengambil data tertentu dari <em>state <\/em>di <em>store<\/em> agar komponen aplikasi bisa menggunakannya.<\/p>\n\n\n\n<p>Contohnya, jika aplikasi membutuhkan daftar produk dari <em>state<\/em>, <em>selector <\/em>akan mengambil hanya data tersebut tanpa harus mengakses seluruh <em>state<\/em>.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">7. Middleware<\/h3>\n\n\n\n<p><em>Middleware <\/em>adalah fungsi tambahan yang berjalan di antara <em>action <\/em>dan <em>reducer<\/em>. Selain itu, Middleware sering digunakan untuk menangani hal-hal seperti <em>logging<\/em>, memanggil API, atau mengelola proses asinkron (seperti <em>fetching <\/em>data dari server).<\/p>\n\n\n\n<p>Contoh middlew<em>a<\/em>re populer di Redux adalah redux-thunk yang dapat membantu Anda melakukan proses asinkron, seperti mengambil data dari server sebelum mengubah <em>state<\/em>.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">8. Subscribe<\/h3>\n\n\n\n<p><em>Subscribe<\/em> adalah cara untuk mendeteksi perubahan <em>state<\/em> di <em>store<\/em>. Ketika <em>state <\/em>berubah, aplikasi dapat &#8220;mendengar&#8221; perubahan ini dan memperbarui tampilan sesuai data terbaru.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Cara Install Redux di Localhost<\/h2>\n\n\n\n<p>Dalam panduan ini, kami akan menginstall redux di <em>localhost <\/em>komputer yang kami gunakan. Sebelum melakukan instalalasi, pastikan Anda telah menginstall Nodejs dan NPM. <\/p>\n\n\n\n<p>Bagi Anda yang telah menginstall NodeJS dan NPM, Anda bisa melewati step 1 dan 2 pada panduan berikut. Namun, bagi Anda yang belum menginstal NodeJS dan NPM, Anda bisa ikuti panduan berikut:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li><em>Download package <\/em>Node.Js <a href=\"https:\/\/nodejs.org\/id\/download\" target=\"_blank\" rel=\"noopener\" title=\"\">disini<\/a>.<\/li>\n<\/ol>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><a href=\"https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/01\/redux1.png\"><img loading=\"lazy\" decoding=\"async\" width=\"787\" height=\"568\" src=\"https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/01\/redux1.png\" alt=\"Download node.js pada website resmi\" class=\"wp-image-52773\" style=\"width:560px;height:auto\" srcset=\"https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/01\/redux1.png 787w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/01\/redux1-300x217.png 300w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/01\/redux1-768x554.png 768w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/01\/redux1-370x267.png 370w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/01\/redux1-270x195.png 270w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/01\/redux1-570x411.png 570w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/01\/redux1-740x534.png 740w\" sizes=\"auto, (max-width: 787px) 100vw, 787px\" \/><\/a><\/figure>\n<\/div>\n\n\n<ol start=\"2\" class=\"wp-block-list\">\n<li>Setelah installer Node.JS terunduh, silahkan run <em>installer <\/em>dan ikuti instruksi instalasi serta setujui perjanjian lisensinya.<\/li>\n<\/ol>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><a href=\"https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/01\/redux2.png\"><img loading=\"lazy\" decoding=\"async\" width=\"490\" height=\"389\" src=\"https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/01\/redux2.png\" alt=\"node.js setup\" class=\"wp-image-52772\" style=\"width:550px;height:auto\" srcset=\"https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/01\/redux2.png 490w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/01\/redux2-300x238.png 300w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/01\/redux2-370x294.png 370w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/01\/redux2-270x214.png 270w\" sizes=\"auto, (max-width: 490px) 100vw, 490px\" \/><\/a><\/figure>\n<\/div>\n\n\n<ol start=\"3\" class=\"wp-block-list\">\n<li>Restart laptop terlebih dahulu, sebelum menjalankannya. Jika sudah, Anda dapat memeriksa instalasi yang berhasil dengan membuka <em>command promp<\/em>t\/terminal dan gunakan perintah berikut:<br \/><br \/>&#8211; <code><strong>node -v<\/strong><\/code><strong><em> <\/em><\/strong>(untuk pengecekan versi node.js)<br \/>&#8211; <strong><code>npm \u2013v<\/code><\/strong> (untuk pengecekan versi npm)<\/li>\n<\/ol>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><a href=\"https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/01\/redux3.png\"><img loading=\"lazy\" decoding=\"async\" width=\"465\" height=\"227\" src=\"https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/01\/redux3.png\" alt=\"cek instalasi node.js pada local laptop\" class=\"wp-image-52771\" style=\"width:577px;height:auto\" srcset=\"https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/01\/redux3.png 465w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/01\/redux3-300x146.png 300w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/01\/redux3-370x181.png 370w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/01\/redux3-270x132.png 270w\" sizes=\"auto, (max-width: 465px) 100vw, 465px\" \/><\/a><\/figure>\n<\/div>\n\n\n<ol start=\"4\" class=\"wp-block-list\">\n<li>Untuk install redux, cukup jalankan perintah berikut ini di dalam <em>command prompt<\/em>\/terminal dengan perintah:<\/li>\n<\/ol>\n\n\n\n<pre class=\"wp-block-code\"><code>npm install --save redux<\/code><\/pre>\n\n\n\n<ol start=\"5\" class=\"wp-block-list\">\n<li>Kemudian untuk menggunakan Redux dengan aplikasi React, Anda perlu menginstall <em>dependensi <\/em>tambahan dengan menuliskan perintah berikut:\u00a0<\/li>\n<\/ol>\n\n\n\n<pre class=\"wp-block-code\"><code>npm install --save react-redux<\/code><\/pre>\n\n\n\n<ol start=\"6\" class=\"wp-block-list\">\n<li>Cek pada direktori C: atau tempat pilihan yang Anda gunakan untuk menyimpan instalasi nodejs dan npm. Jika muncul folder node_modules, tandanya Anda sudah berhasil menginstall redux.<\/li>\n<\/ol>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><a href=\"https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/01\/redux4.png\"><img loading=\"lazy\" decoding=\"async\" width=\"644\" height=\"313\" src=\"https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/01\/redux4.png\" alt=\"install redux di localhost selesai\" class=\"wp-image-52770\" style=\"width:574px;height:auto\" srcset=\"https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/01\/redux4.png 644w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/01\/redux4-300x146.png 300w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/01\/redux4-370x180.png 370w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/01\/redux4-270x131.png 270w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/01\/redux4-570x277.png 570w\" sizes=\"auto, (max-width: 644px) 100vw, 644px\" \/><\/a><\/figure>\n<\/div>\n\n\n<p>Bagaimana sudah paham bukan tentang apa itu redux, manfaat, istilah dan cara instalasinya? Selamat mencoba!<br \/><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Redux adalah salah satu tools populer yang digunakan untuk mengelola state atau data dalam aplikasi, terutama di aplikasi berbasis JavaScript seperti React.\u00a0Bagi pemula, konsep Redux mungkin terdengar rumit, tapi sebenarnya sangat bermanfaat untuk membuat aplikasi lebih terstruktur dan mudah dikelola.\u00a0 Dalam artikel ini, Rumahweb akan membahas tentang apa itu Redux, manfaatnya, dan cara untuk menginstalnya. [&hellip;]<\/p>\n","protected":false},"author":355,"featured_media":52787,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[7],"tags":[768,1855,2434],"class_list":{"0":"post-52760","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-web-programming","8":"tag-nodejs","9":"tag-reactjs","10":"tag-redux"},"aioseo_notices":[],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/01\/banner-redux-adalah.png","jetpack_shortlink":"https:\/\/wp.me\/p8n3G7-dIY","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/www.rumahweb.com\/journal\/wp-json\/wp\/v2\/posts\/52760","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.rumahweb.com\/journal\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.rumahweb.com\/journal\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.rumahweb.com\/journal\/wp-json\/wp\/v2\/users\/355"}],"replies":[{"embeddable":true,"href":"https:\/\/www.rumahweb.com\/journal\/wp-json\/wp\/v2\/comments?post=52760"}],"version-history":[{"count":0,"href":"https:\/\/www.rumahweb.com\/journal\/wp-json\/wp\/v2\/posts\/52760\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.rumahweb.com\/journal\/wp-json\/wp\/v2\/media\/52787"}],"wp:attachment":[{"href":"https:\/\/www.rumahweb.com\/journal\/wp-json\/wp\/v2\/media?parent=52760"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.rumahweb.com\/journal\/wp-json\/wp\/v2\/categories?post=52760"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.rumahweb.com\/journal\/wp-json\/wp\/v2\/tags?post=52760"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}