Trang 1
Trang 2
MC LC
LỜI NÓI ĐẦU ................................................................................................................ 4
NI DUNG CUN SÁCH ................................................................................................ 5
AI NÊN ĐỌC CUN SÁCH NÀY? ................................................................................... 6
Yêu cu trình độ ................................................................................................................................ 6
Cách học đúng cách ......................................................................................................................... 6
Liên h tác gi ................................................................................................................................... 7
GII THIU .................................................................................................................. 8
Ưu đim ca React ............................................................................................................................ 8
TNG QUAN REACT ................................................................................................... 11
Virtual DOM ..................................................................................................................................... 11
DOM là gì? ....................................................................................................................................... 11
Vấn đề ca DOM là gì? ................................................................................................................... 11
Cơ chế hoạt động ca Virtual DOM ............................................................................................... 12
CÀI ĐẶT REACT ......................................................................................................... 13
Cách 1: Viết React trc tiếp trong HTML ...................................................................................... 13
Cách 2: S dng Create-React-App CLI ......................................................................................... 17
Cài đặt Code Editor và các extension cn thiết ............................................................................ 20
XÂY DNG NG DNG TODOS .................................................................................. 26
Gii thiu ng dng Todos ............................................................................................................. 26
Nhng kiến thức React cơ bản nht .............................................................................................. 27
To các components ...................................................................................................................... 32
To Header component và thêm Styles cho ng dng Todo ...................................................... 37
Thêm State ...................................................................................................................................... 39
To component hin th danh sách Todos ................................................................................... 42
Controlled Component ................................................................................................................... 46
Gi và x lý s kin - Handle Events.............................................................................................. 48
Cp nht giá tr state s dng hàm setState() .............................................................................. 51
S dng Destructuring .................................................................................................................... 53
Trang 3
Xóa mt Todo .................................................................................................................................. 54
Thêm mt Todo mi ....................................................................................................................... 56
Cp nht Todo mi vào danh sách ................................................................................................ 60
FETCHING D LIU T API ........................................................................................ 64
Lý thuyết cơ bản v Request Network ........................................................................................... 64
Gii thiu API cung cp cho ng dng Todo ................................................................................ 66
Vòng đời Component trong React ................................................................................................. 67
Cài đặt axios .................................................................................................................................... 68
Ly danh sách Todos bng GET request ...................................................................................... 69
Thêm Todo bng POST request .................................................................................................... 71
Xóa mt Todo bng DELETE request ............................................................................................ 72
REACT HOOKS ........................................................................................................... 74
Tìm hiu Hooks ............................................................................................................................... 74
Refactoring mã ngun Todo App s dng Hooks ........................................................................ 78
QUN LÝ STATE VI REDUX ...................................................................................... 83
3 nguyên tc ca Redux ................................................................................................................. 83
Khi nào thì s dng Redux? ............................................................................................................ 83
Thành phn ca Redux ................................................................................................................... 84
Thc hành s dng Redux trong Todo App .................................................................................. 85
DEPLOY NG DNG REACT ....................................................................................... 94
Deploy ng dng React lên Github Pages ..................................................................................... 95
BÀI TP ................................................................................................................... 100
Project task .................................................................................................................................. 101
Đáp án bài tập tham kho ........................................................................................................... 103
KT NI VI VNTALKING ........................................................................................ 105
THÔNG TIN V TÁC GI........................................................................................... 106
CUN SÁCH KHÁC CA VNTALKING ....................................................................... 107
Trang 4
LỜI NÓI ĐU
Nói đến front-end là không th không nhc ti ReactJS. Một thư viện Javascript được
chống lưng bởi ông lớn Facebook. Lướt qua các trang tuyn dng ln, bn s thy nhu
cu tuyển người biết ReactJS rt ln.
Bn biết CMS ni tiếng Wordpress không? T Wordpress 5.0, hn bạn đã nghe tới trình
son thảo Gutenberg được tích hp sẵn, nó cũng được xây dng bng React đó.
Thêm mt ví d nữa, đó là Gatsby, một trình tạo trang web tĩnh nổi tiếng, một xu hướng
mà nhiu nhà phát trin bắt đầu chuyn sang.
rt nhiu ng dng ni tiếng khác cũng đang sử dụng React như: chotot, Shopee,
Lazada, MyTV...
Điều này cho thy rng, vic la chn ReactJS là mt la chn thông minh trong thi
đim hin ti.
Vi mục đích xây dựng nn tng khi bắt đầu hc ReactJS, mình cho ra đời cun sách
này.
Trong cun sách này, bn s không ch hc các nguyên tắc cơ bản ca ReactJS, mà bn
còn có th ng dụng chúng để t xây dng các ng dng ReactJS hiện đại và trin khai
min phí lên Internet.
Ngoài ra, trong cun sách, mình s gii thiu nhng k thut h tr bn xây dng ng
dng ReactJS d dàng hơn. Ví dụ như qun lý mã ngun vi GIT, la chọn và cài đặt
Code Editor phù hp vi ReactJS.v.v...
Nếu bạn là người thích s chi tiết và t m thì cuốn sách này đích thị dành cho bn.
Hãy tiếp tục đọc và nghin ngm, bn s cm thy yêu thích cun sách này.
Mình đảm bo!
Trang 5
NI DUNG CUN CH
Chào mng bạn đến vi cun sách: "Lp trình React thật đơn giản". Mình tin chc rng,
bn đưc nghe không nhiu thì ít v ngôn ng lp trình web như HTML, Javascript, CSS.
V cơ bản, để to mt ng dng web (ám ch front-end), bn ch cn biết 3 th: HTML,
Javascript, CSS. Tt c nhng công nghệ, thư viện, frameworks... dù đao to búa lớn thì
cũng chỉ xoay quanh 3 ngôn ng đó mà thôi.
Thế gii web hiện đại ngày nay, chúng ta không ch đơn thuần xây dng các website
cung cp thông tin mt chiu mà còn có các ng dụng web, khi mà người dùng có th
tương tác, thay đổi ni dung, thay đổi giao din mà không phi ti li trang (chính là các
ng dng web dng Single Page Applications - gi tt là SPA).
Và đây là mảnh đất để các thư viện như ReactJS tung hoành.
Trong cun sách này, bn s đưc hc và thc hành:
Cách cài đặt và bắt đầu làm vic vi ReactJS (2 cách).
Hc các kiến thc nn tng ca React:
React component
Props và State
Class Component và Functional component
Truyn d liu gia các components.
S dng Style trong ng dng React.
X lý s kin trong ng dng React.
React Hooks và cách s dng.
Redux - cách qun lý state.
Cách ly d liu t API và hin th lên ng dng React.
Trin khai ng dng React lên Internet.
Thc hành từng bước xây dng ng dng Todos.
Bài tp: Xây dng ng dng Meme Generator.
Để đảm bo các bn tp trung và hiu rõ nhng khái nim, kiến thc nn tng ca
ReactJS, mình s không s dng bt k thư viện 3rd nào khi xây dng ng dng, ngoi
tr axios và redux.