Redux là gì? Giới thiệu cơ bản về thư viện Redux JS

Redux là gì? Giới thiệu cơ bản về thư viện Redux JS

Redux là thư viện JavaScript giúp quản lý trạng thái ứng dụng tập trung. Bài viết giới thiệu các khái niệm cơ bản về Redux như Action, Reducer, Store, ưu nhược điểm và luồng hoạt động.
02/03/2024
9,602 Lượt xem

Định nghĩa Redux

Redux là một thư viện JavaScript dùng để quản lý và cập nhật các trạng thái (state) cho ứng dụng. Nó giúp quản lý tập trung trạng thái của toàn bộ ứng dụng tại một nơi duy nhất được gọi là Store.

Một số đặc điểm của Redux

  • Tách biệt phần logic và trạng thái ứng dụng ra khỏi các component
  • Cho phép cập nhật trạng thái một cách đồng bộ và có thể dự đoán được
  • Hỗ trợ cơ chế undo/redo dễ dàng
  • Có thể mở rộng và tùy biến thông qua các middleware và store enhancer

Các khái niệm cơ bản trong Redux

Action

Action là đối tượng JavaScript mô tả ý định thay đổi state. Một action bắt buộc phải có thuộc tính type để mô tả loại thay đổi.

 { type: 'ADD_TODO', text: 'Đi học Redux' } 

Reducer

Reducer là hàm nhận state hiện tại và action, sau đó trả về state mới. Reducer phải là hàm thuần (pure function).

 function reducer(state, action) { switch(action.type) { case 'ADD_TODO': // Logic cập nhật state break; default: return state; } } 

Store

Store sẽ chứa toàn bộ trạng thái của ứng dụng dưới dạng các cặp key-value. Nó cung cấp phương thức getState() để lấy ra snapshot (bản sao) hiện tại của state.

 import {createStore} from 'redux'; const store = createStore(reducer); const state = store.getState(); 

Luồng hoạt động của Redux

Luồng hoạt động chính của Redux như sau:

  1. Action được dispatch đến Store
  2. Store sẽ gọi Reducer với state hiện tại và action vừa dispatch
  3. Reducer xử lý logic và trả về state mới
  4. Store thay thế state cũ bằng state mới từ Reducer
  5. Các View có thể lắng nghe và cập nhật lại giao diện dựa trên state mới

Như vậy, toàn bộ luồng dữ liệu chỉ đơn chiều từ Action đến Reducer rồi đến Store. Điều này giúp dễ dàng theo dõi và gỡ lỗi ứng dụng.

Ưu, nhược điểm của Redux

Ưu điểm

  • Quản lý trạng thái tập trung và dễ dàng theo dõi
  • Tái sử dụng logic và component dễ dàng hơn
  • Có thể chia sẻ data giữa nhiều component
  • Dễ dàng thực hiện undo/redo và lưu lại history thay đổi
  • Hỗ trợ tốt cho việc viết test và debug

Nhược điểm

  • Yêu cầu cấu hình phức tạp cho các ứng dụng đơn giản
  • Latency cao do phải dispatch nhiều action để cập nhật UI
  • Khó tối ưu performance cho các ứng dụng lớn nếu cấu hình không tốt

Nhìn chung Redux phù hợp cho các ứng dụng quy mô lớn, có nhiều trạng thái phức tạp cần quản lý. Đối với ứng dụng nhỏ, việc sử dụng Redux có thể gây phức tạp không cần thiết.

Kết luận

Redux là thư viện quản lý trạng thái phổ biến, giúp cấu trúc và phát triển các ứng dụng React/Angular đơn giản, dễ bảo trì và mở rộng hơn. Hy vọng bài viết đã phần nào giới thiệu được những khái niệm cơ bản về Redux.

Các bạn có thể tham khảo thêm nguồn khác:

Redux là gì? Hiểu rõ cơ bản cách dùng Redux | TopDev

Redux là một predictable state management tool cho các ứng dụng Javascript. Nó giúp bạn viết các ứng dụng hoạt động một cách nhất quán, chạy trong các môi trường khác nhau (client, server, and native)>

Redux là gì? Cấu trúc của Redux như thế nào?

Redux là một vùng chứa trạng thái có thể dự đoán được hay còn biết đến là một thư viện của JavaScript. Thư viện này được thiết kế để giúp bạn viết các ứng dụng JavaScript có thể hoạt động nhất quán tr>

Redux là gì? Tổng hợp những kiến thức quan trọng về Redux

Nov 10, 2022Redux là gì? Redux là Predictable State Management tool (mang nghĩa là công cụ quản lý cao cấp) dành cho các ứng dụng chạy bằng ngôn ngữ lập trình JavaScript. Redux ra đời nhằm tạo ra một>

Redux là gì? Kiến thức tổng quan về Redux cho người mới từ A-Z

May 13, 2021Redux được hiểu là một thư viện javascript giữ vai trò tạo một lớp quản lý trạng thái của các ứng dụng và giúp viết các ứng dụng đó một cách nhất quán và dễ dàng thử nghiệm trong nhiều môi>

Redux js là gì và tại sao nên sử dụng Redux - Fullstack Station

Redux js là một thư viện Javascript giúp tạo ra thành một lớp quản lý trạng thái của ứng dụng. Được dựa trên nền tảng tư tưởng của kiến trúc Flux do Facebook giới thiệu, do vậy Redux thường là bộ đôi>

Redux là gì? Khái niệm cách thức hoạt động và thông tin A đến Z

Redux là một vùng chứa trạng thái có thể dự đoán được cho các ứng dụng JavaScript. Khi ứng dụng phát triển, thật khó để giữ cho nó có tổ chức và duy trì luồng dữ liệu. Redux giải quyết vấn đề này bằng>

Redux là gì? Nguyên tắc hoạt động như thế nào?

Redux là một vùng chứa trạng thái có thể dự đoán được cho các ứng dụng JavaScript. Khi ứng dụng phát triển, thật khó để giữ cho nó có tổ chức và duy trì luồng dữ liệu. Redux giải quyết vấn đề này bằng>

Redux là gì? Khi nào nên dùng nó

Redux có ích vì nó giải quyết vấn đề nào đó. Nhưng thứ mà nó giải quyết không phải quản lí trạng thái. React THỰC HIỆN việc quản lí trạng thái. Redux góp phần vào quá trình đó, nhưng đó không phải gốc>

Redux cho người mới bắt đầu - Part 1 Introduction

Redux js là một thư viện Javascript giúp tạo ra thành một lớp quản lý trạng thái của ứng dụng. Redux được xây dựng dựa trên nền tảng tư tưởng của ngôn ngữ Elm và kiến trúc Flux do Facebook giới thiệu.>

Redux là gì? Toàn bộ thông tin về Redux cho người mới

Aug 25, 2022Redux là một thư viện Javascript có tác dụng tạo ra một lớp quản lý mọi trạng thái của ứng dụng. Hay nói cách khác, Redux là một predictable state management tool (công cụ quản lý cao cấp)>

Học React/Redux qua ví dụ thực tế: Redux - Codeaholicguy

Hãy tìm hiểu store là gì trước đã. Store là một singleton object trong Redux, và giữ vai trò như là global state object. Hơn thế nữa, nó có khả năng sử dụng một số API để dispatch một action, lấy được>

Redux là gì? Tại sao lại ứng dụng trong ReactJS

Redux là một thư viện cho phép chúng ta quản lý state trong một ứng dụng javascript. Nếu kết hợp nó trong React JS thì sẽ như hổ mọc thêm cánh. Tại sao chúng ta phải sử dụng Redux? Redux sẽ giải quyết>

Redux trong React là gì?

Redux là gì? Nói một cách đơn giản, Redux là một công cụ quản lý trạng thái. Mặc dù nó được sử dụng chủ yếu với React, nhưng nó có thể được sử dụng với bất kỳ khung hoặc thư viện JavaScript nào khác.>

Redux là gì? Hiểu rõ cơ bản cách dùng Redux - Tinh Vệ

Aug 13, 2021Giới thiệu. Nói chung Redux khá là phổ biến. Tuy nhiên, không phải tất cả chúng ta đều biết nó là gì và cách sử dụng nó ra sao. Trong bài này, chúng ta sẽ xem vài lý do tại sao nên sử dụng>

Redux là gì? Giới thiệu về Redux cơ bản

Dec 5, 2022Redux là một thư viện Javascript giúp tạo ra thành một lớp quản lý trạng thái của ứng dụng. Được dựa trên nền tảng tư tưởng của ngôn ngữ Elm kiến trúc Flux do Facebook giới thiệu, do vậy Re>

Redux là gì, khái niệm cốt lõi của Redux | by Khải Phan | Medium

Redux sẽ cung cấp thêm một số thứ để làm việc trên một cách thuận tiện hơn. Nhưng ý tưởng chính thì vẫn là việc Redux giúp cho chúng ta hiểu rõ việc ở đâu, tại sao và làm thế nào mà state...>

Bắt đầu với Redux: Tại sao Redux? - Code Envato Tuts+

Redux là một container của trạng thái có thể dự đoán được cho các ứng dụng JavaScript. Mặc dù định nghĩa này mô tả chính xác Redux nhưng rất dễ lầm lẫn khi bạn hình dung lớn hơn về Redux lần đầu tiên.>

Giới thiệu về Redux | openplanning.net

Redux không có khái niệm DISPATCHER. Redux chỉ có một STORE duy nhất thay vi nhiều STORE như của Flux. Các đối tượng Action sẽ được tiếp nhận và xử lý trực tiếp bởi STORE. Dưới đây là hình ảnh minh họ>

Redux tutorial: Part 1 - Giới thiệu Redux thư viện quản lý state trong ...

Aug 4, 2021Redux là một kiến trúc unidirectional Data Flow được xây dựng dựa trên nền tảng tảng tư tưởng của kiến trúc Flux do Facebook giới thiệu mục tiêu là giúp tạo ra một lớp quản lý trạng thái (S>

Redux thật là đơn giản! (Phần 1). Nguyên lý cơ bản của Redux | by Chris ...

Actions. Trong Redux action là 1 pure object định nghĩa 2 thuộc tính là : type: kiểu mô tả action, và payload: giá trị tham số truyền lên {type: "KIEU_ACTION", payload: //tham số}Reducers. Action có n>

Reducer Redux là gì

Redux js là một thư viện Javascript giúp tạo ra thành một lớp quản lý trạng thái của ứng dụng. Redux được xây dựng dựa trên nền tảng tư tưởng của ngôn ngữ Elm và kiến trúc Flux do Facebook giới thiệu.>

Redux là gì? Tìm hiểu lợi ích và hoạt động của Redux

Jun 30, 2022Redux là gì? Redux là một predictable state management tool (công cụ dự đoán phép tính) trong ứng dụng Javascript với khả năng hỗ trợ các lập trình viên trong việc viết các chương trình có>

Redux Framework là gì? Tìm hiểu chi tiết về Redux Framework

Làm quen với Redux thì đơn giản như là tạo một đối tượng cấu hình không có gì hơn ngoài các mảng xxxg nhau. Linh hoạt: Nếu nó không đúng với nhu cầu của bạn, Redux có thể được mở rộng để tạo các trườn>

Redux là gì? Tại sao nên sử dụng Redux? Lý do và các ví dụ rõ ràng ...

Redux không phải là mới và nó khá phổ biến. Tuy nhiên, nếu bạn không biết Redux là gì và bạn muốn biết lý do tại sao bạn nên sử dụng nó, bài viết này ...>

[React] Redux ? Tìm hiểu về chi tiết về Redux trong React (Mới Update)

Aug 29, 2021Redux là gì? Redux là một thư viện JavaScript giúp quản lý trạng thái (state) trong ứng dụng. Để hiểu rõ về khái niệm ta nên đi qua lịch sử của nó. Lịch sử Redux. Vào năm 2003 Facebook giớ>

redux-thunk là gì? tại sao lại cần redux-thunk

Khi nào dùng redux-thunk? Trong khi làm việc với redux, không thể tránh khỏi những yêu cầu bất đồng bộ, với redux core, một action chỉ cho phép return 1 plain object. Đây là lúc ta cần dùng đến middle>

Reducer Redux là gì - Gấu Đây

Oct 26, 2022Redux js là một thư viện Javascript giúp tạo ra thành một lớp quản lý trạng thái của ứng dụng. Redux được thiết kế xây dựng dựa trên nền tảng tư tưởng của ngôn từ Elm và kiến trúc Flux do>

Giới thiệu tổng quát về Redux Toolkit - Trang Chủ

Feb 22, 2021Redux Toolkit (RTK) là gì và tại sao lại có nó? [crayon-63a4809194267421790406/] RTK là một thư viện giúp mình viết Redux tốt hơn, dễ hơn và đơn giản hơn. (tiêu chuẩn để viết Redux) Ba vấn>


Tags:
SHARED HOSTING
70% OFF
$2.99/mo $0.90/mo
SHOP NOW
RESELLER HOSTING
25% OFF
$12.99/mo $9.74/mo
SHOP NOW