[masp]reactjs_evondev[/masp]

[giaban]0đ[/giaban]


[tinhtrang]Còn hàng[/tinhtrang]

[chitiet]
Share Khóa học ReactJS cơ bản đến nâng cao cho người mới bắt đầu của Evondev
Giới thiệu khóa học       
Xin chào các bạn, hôm nay Minutop xin Chia sẻ 1 Khóa Học về Reactjs cực hay mà nhiều bạn thích. Đó Khóa học ReactJS cơ bản đến nâng cao dành cho người mới bắt đầu của Evondev.
Đây là khóa học số 4 của bạn Evondev.
ReactJS đang là một thư viện phổ biến hiện nay đang được rất nhiều người dùng, và các nhà tuyển dụng cũng đang cần. Việc nắm vững kiến thức về ReactJS sẽ giúp các bạn có cơ hội có được việc làm cao hơn cũng như giúp bạn mau chóng trở thành 1 Frontend Developer thực thụ hơn. Với hàng trăm videos trong khóa học mình tin rằng khóa học sẽ cung cấp đủ kiến thức để giúp bạn đạt được những thành quả đó.
Bạn sẽ nhận được gì sau khóa học này
Nắm vững kiến thức về ReactJS cơ bản như props, state, components
Làm chủ được các hooks trong React
Biết cách quản lý State, tối ưu hiệu suất trong ReactJS Components
Mỗi chương sẽ luôn có bài tập kèm theo giúp bạn vừa học vừa thực hành mau nhớ kiến thức
Học được nhiều kiểu styles khác nhau trong ReactJS như styled-components, tailwindcss, sass, module css
Có nhiều dự án hấp dẫn trong quá trình học được hướng dẫn một cách chi tiết và dễ hiểu từ a đến z
Biết cách tối ưu Component, đặt tên sao cho chuẩn, các lỗi thường gặp và cách fix
Nắm vững các kiến thức nâng cao như HighOrderComponent, Compound Component, ContextAPI, Portal...
Và và rất nhiều nhiều kiến thức hay ho và bổ ích khác trong khóa học đang chờ đợi bạn
Nội dung khóa học

Chương 1: Giới thiệu khóa học

  • Intro (Rất quan trọng)
  • Cài đặt vscode extensions và settings
  • Cài đặt NodeJS và Git scm
  • Cài đặt react dev tools và redux dev tools
  • Cách đạt hiệu quả cao khi học khóa học
  • Giới thiệu outline khóa học

Chương 2: React cơ bản

  • Bài 1: Giới thiệu chương 2
  • Bài 2: ReactJS là gì ?
  • Bài 3: Tìm hiểu Create React App
  • Bài 4: Cài đặt CRA
  • Bài 5: JSX là gì ?
  • Bài 6: Tìm hiểu JSX phần 1
  • Bài 7: Tìm hiểu JSX phần 2
  • Bài 8: Tìm hiểu JSX phần cuối
  • Bài 9: Components là gì ?
  • Bài 10: Props là gì ?
  • Bài 11: Thực hành với Props cơ bản
  • Bài 12: Tìm hiểu 2 cách styles cơ bản trong React
  • Bài 13: Rendering list phần 1
  • Bài 14: Rendering list phần 2
  • Bài 15: Rendering list phần 3
  • Bài 16: Refactor code
  • Bài 17: Tìm hiểu props children
  • Bài 18: Recap chương 2

Chương 3: Tìm hiểu react hook useState

  • Bài 19: Giới thiệu chương 3
  • Bài 20: State là gì ?
  • Bài 21: stateless và stateful functional components
  • Bài 22: Tìm hiểu useState cơ bản phần 1
  • Bài 23: Tìm hiểu useState cơ bản phần 2
  • Bài 24: Tìm hiểu useState cơ bản phần 3
  • Bài 25: Tìm hiểu useState cơ bản phần 4
  • Bài 26: Những nguyên tắc khi sử dụng hook cần nắm
  • Bài 27: Stale state là gì ?
  • Bài 28: Thực hành game Tictactoe phần 1
  • Bài 29: Thực hành game Tictactoe phần 2
  • Bài 30: Thực hành game Tictactoe phần 3
  • Bài 31: Thực hành game Tictactoe phần 4
  • Bài 32: Thực hành game Tictactoe phần 5
  • Bài 33: Xử lý state phức tạp như thế nào ?
  • Bài 34: Tìm hiểu useReducer phần 1
  • Bài 35: Tìm hiểu useReducer phần 2
  • Bài 36: Tìm hiểu useReducer phần 3
  • Bài 37: React cập nhật state như thế nào ?
  • Bài 38: Recap chương 3

Chương 4: Styling trong React

  • Bài 39: Giới thiệu chương 4
  • Bài 40: Cài đặt và sử dụng Sass cơ bản
  • Bài 41: Tìm hiểu CSS Module
  • Bài 42: Cài đặt thư viện styled-components
  • Bài 43: Phân tích giao diện Card component
  • Bài 44: Sử dụng styled-components phần 1
  • Bài 45: Sử dụng styled-components phần 2
  • Bài 46: Sử dụng styled-components phần 3
  • Bài 47: Tìm hiểu props trong styled-components
  • Bài 48: Cách tạo Global styles trong styled-components
  • Bài 49: Tìm hiểu một cách sử dụng styled-components khác
  • Bài 50: So sánh 2 cách dùng của styled-components
  • Bài 51: Tìm hiểu Theme trong styled-components
  • Bài 52: Giới thiệu và cài đặt tailwindcss
  • Bài 52.1: Cập nhật CRA và TailwindCSS version 3(quan trọng)
  • Bài 52.2: Hướng dẫn sửa lỗi TailwindCSS không tạo ra class
  • Bài 52.3: Lưu ý quan trọng phải xem
  • Bài 53: Sử dụng tailwindcss phần 1
  • Bài 54: Cài đặt jitmode trong tailwindcss
  • Bài 55: Sử dụng tailwindcss phần 2
  • Bài 56: Xử lý props trong tailwindcss như thế nào
  • Bài 57: Recap chương 4

Chương 5: Tìm hiểu React hook useEffect

  • Bài 58: Giới thiệu chương 5
  • Bài 59: Cách dùng useEffect cơ bản
  • Bài 60: Thực hành với API Picsum photos sử dụng useEffect phần 1
  • Bài 61: Thực hành với API Picsum photos sử dụng useEffect phần 2
  • Bài 62: Thực hành với API Picsum photos sử dụng useEffect phần 3
  • Bài 63: Thực hành với API Picsum photos sử dụng useEffect phần 4
  • Bài 64: Thực hành với API Picsum photos sử dụng useEffect phần 5
  • Bài 65: Refactor code sang async function
  • Bài 66: Tìm hiểu dependency trong useEffect phần 1
  • Bài 67: Tìm hiểu dependency trong useEffect phần 2
  • Bài 68: Tìm hiểu dependency trong useEffect phần 3
  • Bài 69: Tìm hiểu cleanup function trong useEffect
  • Bài 70: Sử dụng event listener trong useEffect như thế nào ?
  • Bài 71: Tối ưu bài tập API Picsum Photos
  • Bài 72: Bài tập HackerNews API phần 1
  • Bài 73: Bài tập HackerNews API phần 2
  • Bài 74: Bài tập HackerNews API phần 3
  • Bài 75: Bài tập HackerNews API phần 4
  • Bài 76: Tối ưu giao diện HackerNews API
  • Bài 77: Bài tập HackerNews API - Fetching dữ liệu với button
  • Bài 78: Bài tập HackerNews API - Sử dụng useReducer phần 1
  • Bài 79: Bài tập HackerNews API - Sử dụng useReducer phần 2
  • Bài 80: Bài tập HackerNews API - Sử dụng useReducer phần cuối
  • Bài 81: Recap chương 5

Chương 6: ref và custom hooks

  • Bài 82: Giới thiệu chương 6
  • Bài 83: Tìm hiểu về ref cơ bản
  • Bài 84: Sự khác nhau giữa hook useRef và hook useState
  • Bài 85: Bài tập đồng hồ bấm giờ đơn giản
  • Bài 86: Bài tập Input Auto Focus
  • Bài 87: Bài tập Textarea Resize phần 1
  • Bài 88: Bài tập Textarea Resize phần 2
  • Bài 89: Bài tập Dropdown phần 1
  • Bài 90: Bài tập Dropdown phần 2
  • Bài 91: Xử lý callback dependency trong useEffect với ref
  • Bài 92: Custom hook là gì ?
  • Bài 93: Viết custom hook useLinkNewTab phần 1
  • Bài 94: Viết custom hook useLinkNewTab phần 2
  • Bài 95: Viết custom hook useHover phần 1
  • Bài 96: Viết custom hook useHover phần 2
  • Bài 97: Xử lý unmounted component với ref phần 1
  • Bài 98: Xử lý unmounted component với ref phần 2
  • Bài 99: Tối ưu bài tập HackerNewsAPI với custom hook phần 1
  • Bài 100: Tối ưu bài tập HackerNewsAPI với custom hook phần 2
  • Bài 101: Tối ưu bài tập HackerNewsAPI với custom hook phần 3
  • Bài 102: Viết custom hook useClickOutSide
  • Bài 103: Bài tập SidebarMenu phần 1
  • Bài 104: Bài tập SidebarMenu phần 2
  • Bài 105: Recap chương 6

Chương 7: Form toàn tập

  • Bài 106: Giới thiệu chương 7
  • Bài 107: Tìm hiểu Form cơ bản trong React phần 1
  • Bài 108: Tìm hiểu Form cơ bản trong React phần 2
  • Bài 109: Tìm hiểu Form cơ bản trong React phần 3
  • Bài 110: Tìm hiểu Form cơ bản trong React phần 4
  • Bài 111: Tìm hiểu Form cơ bản trong React phần 5
  • Bài 112: Bài tập Movie Search App - Đăng ký API
  • Bài 113: Bài tập Movie Search App - Fetching dữ liệu
  • Bài 114: Bài tập Movie Search App - Styling giao diện
  • Bài 115: Bài tập Movie Search App - Hiển thị dữ liệu
  • Bài 116: Bài tập Movie Search App - Hiển thị dữ liệu tiếp theo
  • Bài 117: Bài tập Movie Search App - Chức năng tìm kiếm
  • Bài 118: Bài tập Movie Search App - Sử dụng kỹ thuật debounce
  • Bài 119: Bài tập Movie Search App - Giải thích hook useDebounce
  • Bài 120: Bài tập Movie Search App - Giới thiệu về loading skeleton
  • Bài 121: Bài tập Movie Search App - Thêm loading skeleton
  • Bài 122: Setup giao diện form cơ bản
  • Bài 123: Cài đặt và sử dụng formik vào form
  • Bài 124: Validation cơ bản với formik
  • Bài 125: Validation cơ bản với formik tiếp theo
  • Bài 126: Validation với thư viện Yup
  • Bài 127: Tối ưu source code
  • Bài 128: Bài tập SignUpForm - Phân tích và code giao diện
  • Bài 129: Bài tập SignUpForm - Chia nhỏ và tái sử dụng components
  • Bài 130: Bài tập SignUpForm - Tìm hiểu và sử dụng hook useField
  • Bài 131: Bài tập SignUpForm - Tối ưu components và validtion
  • Bài 132: Bài tập SignUpForm - Reset form và submitting
  • Bài 133: Cài đặt thư viện React Hook Form
  • Bài 134: Sử dụng React Hook Form cơ bản
  • Bài 135: Validation cơ bản
  • Bài 136: Sử dụng Yup cơ bản
  • Bài 137: Các trạng thái trong React Hook Form p1
  • Bài 138: Các trạng thái trong React Hook Form p2
  • Bài 139: Tìm hiểu phương thức watch
  • Bài 140: Tìm hiểu phương thức Reset
  • Bài 141: Tìm hiểu phương thức setValues và setFocus
  • Bài 142: Tìm hiểu Controller
  • Bài 143: Tìm hiểu useController
  • Bài 144: Tìm hiểu Control
  • Bài 145: Recap formik và React Hook Form(RHF)
  • Bài 146: Thực hành Register Form với RHF - Setup
  • Bài 147: Thực hành Register Form với RHF - Styling
  • Bài 148: Thực hành Register Form với RHF - Custom Input
  • Bài 149: Thực hành Register Form với RHF - Custom Radio
  • Bài 150: Thực hành Register Form với RHF - Custom Checkbox
  • Bài 151: Thực hành Register Form với RHF - Custom Dropdown phần 1
  • Bài 152: Thực hành Register Form với RHF - Custom Dropdown phần 2
  • Bài 153: Thực hành Register Form với RHF - Custom Dropdown phần 3
  • Bài 154: Thực hành Register Form với RHF - Validation phần 1
  • Bài 155: Thực hành Register Form với RHF - Validation phần 2
  • Bài 156: Thực hành Register Form với RHF - Form submitting
  • Bài 157: Thực hành Register Form với RHF - Form reset phần 1
  • Bài 158: Thực hành Register Form với RHF - Form reset phần 2
  • Bài 159: Thực hành Register Form với Formik - Setup
  • Bài 160: Thực hành Register Form với Formik - Setup phần 2
  • Bài 161: Thực hành Register Form với Formik - Validation
  • Bài 162: Thực hành Register Form với Formik - Custom Input
  • Bài 163: Thực hành Register Form với Formik - Custom Radio
  • Bài 164: Thực hành Register Form với Formik - Custom Checkbox
  • Bài 165: Thực hành Register Form với Formik - Custom Dropdown
  • Bài 166: Thực hành Register Form với Formik - Lấy giá trị từ Dropdown
  • Bài 167: Thực hành Register Form với Formik - Reset form
  • Bài 168: So sánh formik và react-hook-form

Chương 8: Fragments, Portal

  • Bài 169: Fragments
  • Bài 170: Vấn đề hay gặp khi làm việc với Modal
  • Bài 171: Tìm hiểu và sử dụng createPortal
  • Bài 172: Styling Modal
  • Bài 173: Thêm chức năng cho Modal
  • Bài 174: Xử lý overflow cho Dropdown với createPortal
  • Bài 175: Tooltip challenge
  • Bài 176: Giải bài tooltip phần 1
  • Bài 177: Giải bài tooltip phần 2
  • Bài 178: Bắt lỗi Component với react-error-boundary
  • Bài 179: Kiểm tra Props của Component với PropTypes
  • Bài 180: Tối ưu code Portal nâng cao phần 1
  • Bài 181: Tối ưu code Portal nâng cao phần 2
  • Bài 182: Tối ưu code Portal nâng cao phần 3
  • Bài 183: Tối ưu code Portal nâng cao phần 4
  • Bài 184: Tối ưu code Portal nâng cao phần 5
  • Bài 185: Tối ưu component Tooltips
  • Bài 186: Tối ưu component Portal
  • Bài 187: Recap kiến thức Portal

Chương 9: Context và Router

  • Bài 188: Giới thiệu Context
  • Bài 189: Vấn đề thực tế
  • Bài 190: Thực hành CountContext phần 1
  • Bài 191: Thực hành CountContext phần 2
  • Bài 192: Thực hành AuthContext phần 1
  • Bài 193: Thực hành AuthContext phần 2
  • Bài 194: Thực hành GalleryContext - Setup
  • Bài 195: Thực hành GalleryContext - Styling
  • Bài 196: Thực hành GalleryContext - toggleFavorite
  • Bài 197: Thực hành GalleryContext - addToCart
  • Bài 198: Thực hành GalleryContext - removeFromCart
  • Bài 199: Thực hành GalleryContext - Display count
  • Bài 200: Thực hành Gallery Context - usehooks
  • Bài 201: Thực hành Gallery Context - localStorage
  • Bài 202: Tìm hiểu React Router cơ bản phần 1
  • Bài 203: Tìm hiểu React Router cơ bản phần 2
  • Bài 204: Tìm hiểu React Router cơ bản phần 3
  • Bài 205: Tìm hiểu React Router cơ bản phần 4

Chương 10: Dự án React Simple Movie

  • Bài 206: Thiết lập dự án
  • Bài 207: Code giao diện menu và banner
  • Bài 208: Code giao diện movie card
  • Bài 209: Tìm hiểu và sử dụng thư viện Swiper, SWR
  • Bài 210: Tạo component MovieList và fetching dữ liệu
  • Bài 211: Tạo component Banner
  • Bài 212: Thiết lập Routes cho dự án
  • Bài 213: Fetching dữ liệu trang danh sách phim
  • Bài 214: Trang chi tiết phim - Fetching dữ liệu
  • Bài 215: Trang chi tiết phim - Code giao diện
  • Bài 216: Trang chi tiết phim - Fetching dữ liệu diễn viên
  • Bài 217: Trang chi tiết phim - Fetching dữ liệu trailers và similar
  • Bài 218: Thêm chức năng tìm kiếm phim
  • Bài 219: Thêm Loading
  • Bài 220: Thêm chức năng phân trang - Phân tích chức năng
  • Bài 221: Thêm chức năng phân trang - Sử dụng react-paginate
  • Bài 222: Thêm chức năng phân trang - Tối ưu giao diện
  • Bài 223: Tối ưu component Button
  • Bài 224: Tối ưu API Config
  • Bài 225: Tối ưu import path phần 1
  • Bài 226: Tối ưu import path phần 2
  • Bài 227: Recap lại kiến thức đã học và áp dụng
  • Bài 228: Code splitting Routes
  • Bài 229: Tối ưu source code phần 1
  • Bài 230: Tối ưu source code phần 2
  • Bài 231: Tối ưu source code phần 3
  • Bài 232: Chức năng Load more phần 1
  • Bài 233: Chức năng Load more phần 2
  • Bài 234: Chúc mừng bạn đã hoàn thành dự án

Chương 11: Advanced React

  • Bài 235: Giới thiệu chương 11
  • Bài 236: Higher order components(hocs) phần 1
  • Bài 237: Higher order components(hocs) phần 2
  • Bài 238: Recap HOCs
  • Bài 239: Render props phần 1
  • Bài 240: Render props phần 2
  • Bài 241: Recap render props
  • Bài 242: Custom hooks
  • Bài 243: React composition(Compound Component) phần 1
  • Bài 244: React composition(Compound Component) phần 2
  • Bài 245: React composition(Compound Component) phần 3
  • Bài 246: Prop collections
  • Bài 247: Prop getters
  • Bài 248: Control props phần 1
  • Bài 249: Control props phần 2
  • Bài 250: Control props phần 3
  • Bài 251: State reducer phần 1
  • Bài 252: State reducer phần 2
  • Bài 253: State reducer phần 3
  • Bài 254: Inversion of control phần 1
  • Bài 255: Inversion of control phần 2
  • Bài 256: Inversion of control phần 3
  • Bài 257: Inversion of control phần 4
  • Bài 258: Tối ưu Component re-render với useMemo, useCallback và React.memo
  • Bài 259: Recap chương 11

Chương 12: Firebase cơ bản

  • Bài 260: Giới thiệu và thiết lập Firebase
  • Bài 261: Thiết lập Firestore Database
  • Bài 262: Truy xuất dữ liệu Collection với getDocs
  • Bài 263: Thêm dữ liệu vào Collection với addDoc
  • Bài 264: Xóa dữ liệu trong Collection với deleteDoc
  • Bài 265: Hiển thị dữ liệu realtime với onSnapshot
  • Bài 266: Cập nhật dữ liệu với updateDoc
  • Bài 267: Truy xuất 1 Document với getDoc
  • Bài 268: Truy vấn dữ liệu nâng cao với Firestore Queries
  • Bài 269: Giới thiệu và cài đặt Firebase Authentication
  • Bài 270: Thực hiện chức năng đăng ký với Firebase Auth
  • Bài 271: Thực hiện chức năng đăng xuất với Firebase Auth
  • Bài 272: Hiển thị displayName và tự động thêm Collection vào Firestore
  • Bài 273: Thực hiện chức năng đăng nhập với Firebase Auth

Chương 13: Dự án Monkey Blogging

  • Bài 274: Giới thiệu chương 13
  • Bài 275: Thiết lập Firebase
  • Bài 276: Thiết lập Routes
  • Bài 277: Tạo authContext
  • Bài 278: Code giao diện trang SignUp phần 1
  • Bài 279: Code giao diện trang SignUp phần 2
  • Bài 280: Label component
  • Bài 281: Input component phần 1
  • Bài 282: Input component phần 2
  • Bài 283: Field component
  • Bài 284: Xử lý toggle password
  • Bài 285: Button component phần 1
  • Bài 286: Button component phần 2
  • Bài 287: Xử lý Form Validation cho trang SignUp phần 1
  • Bài 288: Xử lý Form Validation cho trang SignUp phần 2
  • Bài 289: Hoàn thành chức năng đăng ký(SignUp Authentication)
  • Bài 290: Thêm PropTypes cho Button component
  • Bài 291: Code giao diện trang đăng nhập(SignIn)
  • Bài 292: Hoàn thành chức năng đăng nhập(SignIn Authentication)
  • Bài 293: Code giao diện block Header phần 1
  • Bài 294: Code giao diện trang 404
  • Bài 295: Code giao diện block Header phần 2
  • Bài 296: Code giao diện block Banner
  • Bài 297: Lưu ý về giao diện nên xem
  • Bài 298: Tạo và tối ưu PostCategory component
  • Bài 299: Tạo và tối ưu PostTitle component
  • Bài 300: Tạo và tối ưu PostMeta component
  • Bài 301: Tạo và tối ưu PostImage component
  • Bài 302: Tối ưu chức năng Toggle Password
  • Bài 303: Lưu ý về giao diện
  • Bài 304: Phân tích Database
  • Bài 305: Chức năng thêm bài viết - Tổng quan
  • Bài 306: Chức năng thêm bài viết - Upload hình ảnh
  • Bài 307: Chức năng thêm bài viết - Tối ưu giao diện Upload
  • Bài 308: Chức năng thêm bài viết - Xóa hình ảnh và tối ưu logic
  • Bài 309: Chức năng thêm bài viết - Tối ưu code Upload hình ảnh
  • Bài 310: Chức năng thêm bài viết - Thêm toggle bài viết nổi bật
  • Bài 311: Chức năng thêm bài viết - Truy vấn danh mục(category)
  • Bài 312: Chức năng thêm bài viết - Chọn danh mục từ Dropdown
  • Bài 313: Tối ưu code chức năng thêm bài viết
  • Bài 314: Tối ưu code chức năng thêm bài viết tiếp theo
  • Bài 315: Truy xuất và hiển thị bài viết nổi bật
  • Bài 316: Tối ưu SignUp component
  • Bài 317: Tối ưu code
  • Bài 318: Hiển thị thời gian của bài viết
  • Bài 319: Lưu ý về giao diện tiếp theo
  • Bài 320: Chức năng thêm Danh mục phần 1
  • Bài 321: Chức năng thêm Danh mục phần 2
  • Bài 322: Hiển thị danh sách Danh mục
  • Bài 323: Chức năng xóa Danh mục
  • Bài 324: Chức năng cập nhật Danh mục phần 1
  • Bài 325: Chức năng cập nhật Danh mục phần 2
  • Bài 326: Chức năng tìm kiếm Danh mục phần 1
  • Bài 327: Chức năng tìm kiếm Danh mục phần 2
  • Bài 328: Chức năng tải thêm Danh mục phần 1
  • Bài 329: Chức năng tải thêm Danh mục phần 2
  • Bài 330: Hiển thị danh sách User
  • Bài 331: Tối ưu cấu trúc dữ liệu của User
  • Bài 332: Chức năng thêm User phần 1
  • Bài 333: Chức năng thêm User phần 2
  • Bài 334: Chức năng xóa User
  • Bài 335: Chức năng cập nhật thông tin User
  • Bài 336: Tối ưu chức năng xóa hình ảnh phần 1
  • Bài 337: Tối ưu chức năng xóa hình ảnh phần 2
  • Bài 338: Tối ưu cấu trúc dữ liệu bài viết phần 1
  • Bài 339: Tối ưu cấu trúc dữ liệu bài viết phần 2
  • Bài 340: Hiển thị danh sách bài viết
  • Bài 341: Chức năng xóa bài viết
  • Bài 342: Chức năng tìm kiếm, tải thêm bài viết
  • Bài 343: Chức năng cập nhật bài viết phần 1
  • Bài 344: Chức năng cập nhật bài viết phần 2
  • Bài 345: Chức năng cập nhật bài viết phần 3
  • Bài 346: Chức năng cập nhật bài viết phần 4
  • Bài 347: Chức năng cập nhật bài viết phần 5
  • Bài 348: Hiển thị thông tin tác giả bài viết
  • Bài 349: Hiển thị bài viết liên quan phần 1
  • Bài 350: Hiển thị bài viết liên quan phần 2
  • Bài 351: Tối ưu thông tin user authentication
  • Bài 352: Tối ưu source code phần 1
  • Bài 353: Tối ưu source code phần 2

Chương 14: Redux toàn tập

  • Bài 354: Giới thiệu về Redux
  • Bài 355: Cài đặt Create React App Redux
  • Bài 356: Ví dụ đơn giản với component Counter
  • Bài 357: Sử dụng Redux core cho component Counter
  • Bài 358: Sử dụng Redux toolkit cho component Counter
  • Bài 359: Thực hành bài tập Toggle DarkMode phần 1
  • Bài 360: Thực hành bài tập Toggle DarkMode phần 2
  • Bài 361: Thực hành bài tập Toggle Sidebar
Vẫn tiếp tục update...

[/chitiet]

Share Khóa học ReactJS cơ bản đến nâng cao cho người mới bắt đầu của Evondev
Share Khóa học ReactJS cơ bản đến nâng cao cho người mới bắt đầu của Evondev

Ant Green
ĐĂNG NHẬP
Nhận nhiều ưu đãi hơn