Actions ❖Action như 1 event mô tả điều gì đó (what) xảy ra trong ứng dụng ❖Là một javascript object thuần tuý, có thêm trường (field) type. ❖Ví dụ Actions ❖Action như 1 event mô tả điều gì đó (what) xảy ra trong ứng dụng ❖Là một javascript object thuần tuý, có thêm trường (field) type. ❖Ví dụ
Trang 1Conceive Design Implement Operate
THỰC HỌC – THỰC NGHIỆP
http://www.poly.edu.vn
Trang 2MỤC TIÊU
Redux
React với redux
Redux thunk
Trang 4REDUX
Trang 5REDUX – DATA FLOW
(View)
(Action)
(State)
View: mô tả giao diện người dùng dựa vào state hiện tại
Action: sự kiện xảy ra trong ứng dụng dựa vào user input
Trang 7❑ Reducers
❖như là 1 event listener xử lý các event dựa vào
received action (event) type
❖là 1 function, nhận current state và action object, cậpnhật state nếu cần và trả về state mới (state,
action) => newState
❖Ví dụ
Trang 8❑ Luật khi tạo reducers
❖Chỉ nên tính toán giá trị của new state dựa vào đối sốstate và action
❖Không được phép sửa đổi state hiện có, sao chép
state hiện có và thực hiện các thay đổi đối với giá trịsao chép
Trang 9❑ Store
❖Được tạo ra bằng cách truyền vào reducer
❖Dùng phương thức getState để trả về current state
Trang 10REACT VỚI REDUX
❑ React-Redux là một thư viện độc lập cho phép chúng ta sử dụng Redux với một ứng dụng
React
❑ Chúng thường được sử dụng cùng nhau để truy cập dữ liệu global state
Trang 11REACT VỚI REDUX
❑ Cài đặt
Trang 12SONG LIST APP
Trang 13SONG LIST APP
❑ Yêu cầu
SongList SongDetail
Trang 14SONG LIST APP
❑ Không sử dụng redux
Trang 15SONG LIST APP
❑ Sử dụng redux
Trang 16❑ Sử dụng redux
Trang 17❑ Provider
❖Là component của react
❖Được cung cấp bởi thư viện react-redux
❖Cung cấp store cho những component con của nó
Trang 18❑ Connect ()
❖Là 1 method
❖Kết nối các components đến store
❖Cho phép truy xuất global state vào component
❖Chỉ có những component bên trong providers mới cóthể connect
stateProps : được sử dụng để lấy giá trị state (vào
component hiện tại) như 1 props value
dispatch
Trang 19❑ Cấu trúc project
Trang 20SONG LIST APP - ACTION
Trang 21SONG LIST APP - REDUCERS
Trang 22❑ Provider
Trang 23❑ Connect
Trang 24CONNECT - MAPSTATETOPROPS
❑ Connect
Trang 26REDUX THUNK
codepen.io
Trang 27REDUX THUNK
Trang 28REDUX ASYNC DATA FLOW
Trang 29REDUX-THUNK
Trang 30REDUX-THUNK
Trang 31BLOG APP
Trang 32CẬP NHẬT STATE