Học React bằng cách tạo trò chơi trên web
zerocho
Tìm hiểu React thông qua các trò chơi trên web. Tìm hiểu tất cả các lớp và hook, đồng thời tìm hiểu thêm API ngữ cảnh, Bộ định tuyến React, gói web và Babel.
Cơ bản
React
Chúng ta sẽ tạo ra một dịch vụ mạng xã hội tương tự như Twitter (X.com) bằng cách sử dụng React19 & Next15 & ReactQuery5 & Next Auth5 & MSW2 & socket.io4 & zustand stack. Cuối cùng là SSR để tối ưu hóa công cụ tìm kiếm!
3,414 học viên
Độ khó Trung cấp trở lên
Thời gian Không giới hạn


Đánh giá từ những học viên đầu tiên
5.0
부끄
const nói = Tôi sẽ không gặp phải lỗi mà tôi đã từng gặp phải.
5.0
Grit Grit
Đây là bài giảng của Zerocho mà tôi tin tưởng và theo dõi! Mình cũng đã báo cáo về tài liệu chính thức để học Next nhưng mình đọc không kỹ nên mình nghĩ sẽ dễ hiểu hơn nếu xem hết bài giảng rồi đọc tài liệu chính thức. Thông thường, sau khi xem toàn bộ bài giảng và nghiên cứu các chức năng cốt lõi, tôi chỉ nhớ từ khóa của một số chức năng nhất định trong tài liệu chính thức. Nếu tôi cần một chức năng nào đó trong khi làm việc, tôi có xu hướng tìm nó trong tài liệu chính thức và áp dụng nó. Thời lượng bài giảng mỗi tập không quá dài và được phân chia hợp lý nên rất dễ xem khi đi tàu điện ngầm hoặc khi rảnh rỗi, đồng thời cũng rất thuận tiện để xem lại những phần chưa hiểu. Tôi chỉ sử dụng các hàm truy vấn React như một ý tưởng, nhưng tôi nghĩ tôi đã sử dụng chúng tốt hơn sau khi nghe lời giải thích!! Tôi cũng đã sử dụng Zustand lần đầu tiên và tìm hiểu về msw cũng như các thư viện khác nhau như một phần thưởng. Cảm ơn bạn rất nhiều vì đã liên tục tải lên những thông tin bổ sung chất lượng cao như bản phân phối và ổ cắm web hữu ích cần biết trong lĩnh vực này. Hãy tiếp tục làm việc chăm chỉ! cười
5.0
미니버드
Nhờ khóa học này, Next.js đã trở thành công nghệ yêu thích của tôi!!! Cho đến nay, tôi đã nghe các bài giảng trên nhiều nền tảng khác nhau và đây là lần đầu tiên tôi nghe bài giảng của Infrun. Sau khi tham gia bài giảng Tiếp theo này, tôi rất hài lòng nên cuối cùng tôi đã tham gia các bài giảng khác của Infrun! Khóa học này không chỉ về mã hóa sao chép mà còn dạy bạn một cách tử tế, vì vậy tôi nghĩ kỹ năng của mình đang được cải thiện rất nhiều! Cảm ơn bạn đã dạy cho tôi công nghệ Next tốt nhất và tôi hy vọng sẽ nhận được nhiều sự giúp đỡ trong việc phát triển web trong tương lai!
Phát triển React
React + TypeScript
React Query
Next.js App Router
SSR & SEO
MSW
Next Auth
trực tiếp web socket chat
tình trạng
Phát hành AWS
/builder/9d4a9906-36ac-4d7c-aa48-12ecb28886a1/스크린샷 2023-11-20 135704.png?w=960)
Khóa học thứ 14 tiếp theo đã được cập nhật thành khóa học thứ 15 tiếp theo!
Twitter đổi tên thành X.com nên tôi cũng đổi từ Nordbird thành Jet.com.
Bạn không cần phải biết Tiếp theo. Tôi sẽ kể cho bạn mọi thứ trong bài giảng này. Bạn phải biết React.
Bộ định tuyến ứng dụng Next.js được sử dụng theo mặc định. ( Khóa học Nordbird trước đây là Next Page Router)
Vì chúng tôi đã tải lên phiên bản này nên chúng tôi cũng đã cập nhật tất cả các phiên bản thư viện lên React Query 5, Next Auth 5 và MSW 2.
14 tính năng tiếp theo như Server Action được đưa vào một cách tự nhiên.
Triển khai tính năng cuộn vô hạn, bộ nhớ đệm dữ liệu, cập nhật tối ưu, khôi phục, v.v. với React Query.
Trò chuyện trong thời gian thực được triển khai bằng cách sử dụng websockets + truy vấn phản ứng.
Hãy thay thế API bối cảnh bằng Zustand.
Bài giảng thực hiện theo quy trình tương tự như thực tế (khi người lập kế hoạch lập kế hoạch xong -> khi back-end dev chưa tạo API -> khi back-end dev đã hoàn thiện API)
Hãy sử dụng các tính năng mới nhất của bộ định tuyến như các tuyến song song và các tuyến chặn.
Các chức năng và tuyến đường chính của x.com gần như giống hệt nhau!
Tìm hiểu cách thực hiện cuộn vô hạn để truy xuất dữ liệu vô hạn.
Cập nhật lạc quan cho phép phản hồi ngay lập tức trong khi truyền dữ liệu đến máy chủ!
Bạn sẽ có thể xem xét kế hoạch và xác định cấu trúc thư mục.
Việc phát triển API có thể được thực hiện mà không cần nhà phát triển phụ trợ.
Dữ liệu có thể được quản lý hiệu quả dựa trên API.
Bạn có thể chuẩn bị tự mình triển khai một máy chủ phía trước.
Trò chuyện thời gian thực có thể được thực hiện.
/builder/55362e65-ccc7-4862-9cf3-e9bf75228158/스크린샷 2023-11-20 134555.png?w=960)
Bạn có tò mò về vai trò của những thư mục đó không?
Tận dụng tối đa lợi thế của Bộ định tuyến ứng dụng tiếp theo
Rất nhiều thư mục khác nhau và thú vị đã được thêm vào thư mục Next App Router() @folder, thư mục (..), thư mục (..), thư mục (...), thư mục [], _folder...
Việc định tuyến có thể được thực hiện dễ dàng nếu bạn có cấu trúc thư mục tốt. Chúng ta hãy cùng nhau học hỏi.
Tạo máy chủ API giả bằng MSW
Nhà phát triển phụ trợ của bạn chưa tạo API? Thế là lịch trình cứ bị lùi lại à? Tuy nhiên, bạn không nên chỉ mút ngón tay! Trước tiên hãy phát triển giao diện người dùng bằng cách tạo máy chủ API giả bằng MSW. Với những chú mèo dễ thương!
/builder/128a88c5-65a1-410b-8ea5-82658dfdbf06/스크린샷 2023-11-20 134502.png?w=960)
Chú mèo dễ thương 😺 Đang phát triển với dữ liệu giả!
/builder/e6534300-fe0c-4a49-a3dd-8ad5e3d0ea5b/스크린샷 2023-11-20 133935.png?w=960)
Chúng tôi đã chuẩn bị không chỉ API mà còn cả tài liệu!
Triển khai một dịch vụ với phần phụ trợ đã được chuẩn bị sẵn
Sau khi làm việc chăm chỉ trên MSW, tôi nghe nói rằng nhà phát triển phụ trợ đã hoàn thành API! Bây giờ hãy phát triển giao diện người dùng bằng API thực tế.
Tôi đã chuẩn bị mọi thứ cho phần phụ trợ. Chỉ cần gọi tại quầy lễ tân và sử dụng nó! Hãy nhập dữ liệu từ phần phụ trợ vào React Query và thực hiện lưu vào bộ đệm, cũng như cuộn vô hạn và cập nhật tối ưu.
Chuẩn bị triển khai thông qua SSR
Tôi đã phân phối trước trên z.nodebird.com . Hãy quan tâm đến SEO của bạn thông qua SSR và đảm bảo trang chủ của bạn hiển thị tốt khi được chia sẻ trên mạng xã hội.
/builder/21bfc02e-80bb-4cfa-aaf3-10b2336dc68b/스크린샷 2023-11-20 135121.png?w=960)
Nó cũng được chia sẻ rất tốt trên KakaoTalk.
Trò chuyện trực tiếp với Elon Musk!!
Phần thưởng: Kể cả trò chuyện trực tiếp
Tìm hiểu các ổ cắm web và đảo ngược thao tác cuộn vô hạn trong khi triển khai trò chuyện theo thời gian thực.
Sau khi tìm hiểu công nghệ WebSocket, bạn có thể sử dụng nó không chỉ trong trò chuyện mà còn ở nhiều nơi khác (chẳng hạn như làm mới theo thời gian thực...thông báo...).
Thay vì tự mình thiết lập dự án, việc bắt đầu bằng cách sao chép thư mục ch0 của GitHub sẽ dễ dàng hơn.
Hệ điều hành và phiên bản (OS): Windows 11
Công cụ được sử dụng: Node.js 22, Next 15
Cần có kiến thức cơ bản về HTML/CSS/JS/React.
TypeScript cần thiết cho bài giảng sẽ được cung cấp trong bài giảng.
Câu hỏi sẽ được trả lời trong vòng 24 giờ .
Bạn có thể sắp xếp nội dung bài giảng trên blog của mình nhưng phải ghi nguồn.
Khóa học này dành cho ai?
웹 서비스를 완성하기 위해 React Framework sử dụng
Các nhà phát triển && người mong muốn trở thành nhà phát triển && người đang tìm việc làm trong lĩnh vực Front-end
Next App Router là ứng dụng mà bạn muốn sử dụng tích cực
React Query để quản lý dữ liệu máy chủ
SSR, SEO đều muốn chăm sóc
Cần biết trước khi bắt đầu?
Kiến thức về HTML, CSS
JavaScript kiến thức cho đến ES2022
Kiến thức cơ bản về React (Xem khóa học React miễn phí của Zerocho)
TypeScript (sẽ được giới thiệu trong bài giảng)
Xác minh sự nghiệp
68,840
Học viên
1,822
Đánh giá
9,775
Trả lời
4.8
Xếp hạng
28
Các khóa học
Ưu điểm trong các bài giảng của tôi là phần Q&A (Từng 2 lần giành giải Chiến thần giải đáp của Inflearn). Tôi sẽ cố gắng phản hồi trong vòng 24 giờ! Tôi sẽ trả lời với tinh thần như đang cùng bạn giải quyết vấn đề!
Một trong những điểm mạnh chính trong các khóa học của tôi là hỗ trợ Giải đáp thắc mắc (Q&A). (Từng hai lần giành giải thưởng "Vua giải đáp" của Inflearn) Tôi sẽ phản hồi các câu hỏi của bạn trong vòng 24 giờ và cố gắng hết sức để giúp đỡ bạn! Bạn sẽ cảm thấy như chúng ta đang cùng nhau giải quyết các vấn đề.
👉Bài giảng của ZeroCho
Lộ trình đầy đủ cho tất cả các bài giảng của ZeroCho. Lộ trình hoàn chỉnh cho tất cả các khóa học của tôi có sẵn tại đây.
– Tác giả của Node.js Textbook, Self-Guided JavaScript by ZeroCho, Let's Get IT JavaScript và TypeScript Textbook
– Người điều hành ZeroCho.com
– Hiện tại) Đang phát sóng về phát triển phần mềm trên YouTube tại ZeroCho TV
– Cựu) CTO tại Smoretalk
– Cựu) CTO của Today's Pickup (Sau khi thương vụ exit với Kakao Mobility, trở thành Trưởng bộ phận phát triển trẻ tuổi nhất tại Kakao Mobility)
Tác giả của Node.js Textbook, Self-Guided JavaScript by ZeroCho, Let's Get IT JavaScript và TypeScript Textbook
Người điều hành ZeroCho.com
Hiện đang vận hành kênh YouTube ZeroCho TV, chuyên về các chủ đề phát triển phần mềm
Cựu CTO tại SmoreTalk
Cựu CTO tại Today Pickup (được Kakao Mobility mua lại, nơi tôi trở thành trưởng nhóm phát triển trẻ tuổi nhất)
Tất cả
81 bài giảng ∙ (14giờ 28phút)
Tài liệu khóa học:
9. Nhóm tuyến
05:20
13. 클라이언트 컴포넌트로 전환하기
04:22
14. default.tsx
03:57
16. thư mục riêng tư
02:30
19. Nhân bản bố cục
11:28
32. Tạo vùng đa ảnh
17:55
33. Làm responsive
09:57
Tất cả
132 đánh giá
4.5
132 đánh giá
Đánh giá 3
∙
Đánh giá trung bình 5.0
Đánh giá 14
∙
Đánh giá trung bình 4.4
Đánh giá 1
∙
Đánh giá trung bình 3.0
3
Tôi nghĩ nội dung giới thiệu công nghệ mới và tiến hành mã hóa nhân bản là tốt. Tuy nhiên, theo thời gian, nhiều lỗi đã xảy ra do các phiên bản gói không khớp hoặc do thay đổi cách sử dụng, dẫn đến thời gian tìm kiếm tài liệu chính thức và chỉnh sửa trực tiếp thay vì xem bài giảng tăng lên đáng kể (Bài giảng 1, Tài liệu chính thức). 9 = Tôi bối rối không biết mình đang xem bài giảng hay đang nghe chuông báo nhắc tôi vào trang web công cộng) Cảm giác giống như đang xem một buổi trình diễn mã hóa bản sao X hơn là một bài giảng. Tôi cảm thấy sẽ tốt hơn nếu chủ yếu giải thích cách sử dụng gói, ưu điểm của nó, vòng đời của khung nextjs, ưu điểm và nhược điểm của nó cũng như thiết kế cấu trúc tệp được đề xuất. Mặc dù nó chủ yếu hiển thị mã hóa nhưng tôi cảm thấy phần giải thích khá kém nên đôi khi tôi phàn nàn. Sẽ thật tuyệt nếu họ tập trung nhiều hơn vào việc hiển thị phương pháp chính xác, thiết kế cấu trúc, tối ưu hóa, v.v. thông qua mã hóa bản sao, nhưng thay vào đó, họ bảo bạn xem các tài liệu chính thức và nghiên cứu thêm. của riêng bạn, nên cuối cùng tôi đã xem rất nhiều tài liệu chính thức và thu được những kiến thức không có trong các bài giảng, điều mà tôi nghĩ là tốt. Nếu bạn xuất bản bài giảng với mục đích xuất bản nó thì có vẻ như đã thành công. nhưng có vẻ như mục đích lấy bài giảng cho dễ hiểu đã không còn nên là một bài giảng còn nhiều điều đáng mong đợi. Trong bài giảng tiếp theo, tôi hy vọng bài giảng sẽ tập trung vào các ví dụ phù hợp với mã đã chuẩn bị sẵn, quy ước đặt tên thống nhất và các cấu trúc tệp khác nhau được sử dụng trong thực tế. Sau đó, tôi sẽ sử dụng mã nguồn trên GitHub để nghiên cứu tài liệu chính thức từng bước để giải quyết các lỗi không xuất hiện trong bài giảng. Tôi hy vọng đây là những phản hồi hữu ích, dù chỉ một chút, đối với Zerocho, người luôn nỗ lực tạo ra những bài giảng hay.
Cảm ơn bạn đã phản hồi tốt. Từ giờ trở đi, chúng tôi sẽ tập trung vào thiết kế kết cấu theo định hướng thực tế cũng như những ưu và nhược điểm của gói!
Đánh giá 3
∙
Đánh giá trung bình 3.7
1
Việc chỉnh sửa video khó hiểu đến mức điên rồ. Vì thế mình đã dán đoạn code bạn đăng nhưng nó thường không đồng bộ nên mất rất nhiều thời gian để tìm ra. Có một số phần hay của bài giảng, nhưng những phần này thực sự làm gián đoạn quá trình học tập.
Trước hết, chúng tôi xin lỗi vì bất kỳ sự bất tiện nào mà điều này có thể gây ra cho bạn. Tôi đang chỉnh sửa kế hoạch bài giảng và video. Tôi sẽ đánh giá cao nếu bạn có thể cho tôi biết phần nào bị nhầm lẫn và mã không đồng bộ.
Đánh giá 6
∙
Đánh giá trung bình 4.3
1
Tôi luôn thích các bài giảng của Zerocho, nhưng tôi nghĩ Next có trình độ hơi thấp. Đây là lý do tại sao: 1. Thứ tự bài giảng bị xáo trộn. - Bài giảng lộn xộn, lộn xộn. Ban đầu, bài giảng của Zerocho có vẻ không được tổ chức một cách có hệ thống, nhưng lần này nó hơi gay gắt. Nó đi đây đi đó và tới lui. 2. Chỉ cần sao chép và dán mã Tôi muốn làm theo nhưng tôi chỉ sao chép và dán. Tuy nhiên, việc sao chép và dán không có nghĩa là bài giảng và đoạn code tôi đang xem là đồng bộ. Tôi muốn bạn tải lên tất cả mã của Bài 1, Bài 2 và Bài 3.
Trước hết, chúng tôi xin lỗi vì bất kỳ sự bất tiện nào gây ra cho bạn khi tham gia khóa học. Tôi đang chỉnh sửa kế hoạch bài giảng và video. Tôi sẽ đánh giá cao nếu bạn có thể cho tôi biết phần nào bị lẫn lộn và mã không đồng bộ. Về phần cập nhật, tôi sẽ đăng lại những gì còn sót lại để phản hồi lại một bài đánh giá khóa học khác. "Bài giảng này không được thiết kế để làm theo một cách mù quáng (tôi đã nói về ưu và nhược điểm của việc mã hóa nhân bản trong video). Nếu đúng như vậy thì bài giảng sẽ kéo dài hơn 30 giờ vì tôi phải hiển thị từng đoạn mã một. Mẹo khi tham gia bài giảng này là trước tiên hãy thử sao chép mã của chính bạn và sử dụng mã trong bài giảng này làm bảng trả lời. Hoặc bạn có thể xem bài giảng trước và cố gắng tự mình thực hiện dựa trên những gì bạn đã học. Mục đích của bài giảng là giúp bạn có thể tự tạo một trang web như x.com mà không cần phải tuân theo mã."
Mã của tất cả các bài giảng 1, 2 và 3 đều được tải lên trên GitHub (tổng cộng có 8 mã, bao gồm cả mã ở giữa cho mỗi bài giảng, được tải lên trên GitHub), nhưng tôi không chắc nó có ý nghĩa gì.
Xin chào. Tôi xác nhận rằng nó đã được đăng trên GitHub. Nó được đăng theo phiên ở định dạng lớn. Đúng hơn, nếu là 1 bài học theo đơn vị nhỏ thì mã phù hợp cho 1 bài học. Nếu là bài 2 thì đăng code bài 2 lên là tốt. Thứ tự các bài giảng bị xáo trộn. Mình đang nói là làm a rồi làm b, rồi a sai nên bạn phải sửa lại mã cho a. Điều này xảy ra quá thường xuyên. Vấn đề với điều này là bạn phải tham dự tất cả các bài giảng. Ngay cả khi bạn nghe giảng và chỉ xem những phần bạn muốn xem, Sẽ thật tuyệt nếu bạn có thể nhìn thấy nó một cách trôi chảy. Và sẽ thật tuyệt nếu có một số tài liệu trực quan. Đơn giản là có cắt chỉnh sửa chứ không chỉ có chữ. Sẽ thật tốt nếu bạn có thể giải thích nó bằng dữ liệu trực quan. Cá nhân tôi cũng đã xem qua tài liệu chính thức một lần. Tài liệu chính thức dễ đọc hơn và được tổ chức tốt hơn. Tôi có cảm giác rất rõ ràng rằng lớp lót bị vô tổ chức. Tôi đang thực hiện nghiên cứu tiếp theo tại công ty của mình và Zerocho là phiên bản duy nhất của next14 nên tôi đã xem nó. Nếu không xem lúc làm việc thì có lẽ tôi đã không xem đến giữa buổi 2...
Mã bài giảng đã được tải lên lại cho từng bài. Link Github của từng mã có trong ghi chú bài học. Bạn nói rằng bạn sửa lại a vì b bị sai trong quá trình làm a, nhưng về cơ bản, sau khi kết thúc một video bài giảng, nội dung của bài giảng đó phải chạy được. Tuy nhiên, khi thêm chức năng mới b, bạn có thể phải sửa đổi mã a hiện có. Đây không phải là nội dung bài giảng bị xáo trộn mà là điều không thể tránh khỏi trong một bài giảng lập trình. Tài liệu trực quan được thu thập và sắp xếp trong giáo án bài giảng (Github README.md). Chúng tôi sẽ sớm tải lên các ghi chú bài giảng do học viên tổng hợp. Và tôi đã nói trong phần đầu của bài giảng rằng bạn không nên gõ theo mã trong phần 1, 2 mà hãy sao chép và sử dụng. Tất nhiên, bạn có quyền gõ theo và xem bài giảng theo phong cách của riêng bạn. Tôi sẽ không sản xuất các bài giảng kiểu gõ theo nữa. Tôi nghĩ rằng việc chỉ gõ theo từng chữ một mã trong bài giảng mà không tự mình tạo ra trước thì cũng giống như sao chép và dán, nên nó vô nghĩa (đây là ý kiến cá nhân của tôi). Tôi e rằng phần này không phù hợp với bài giảng và phong cách của tôi.
Hãy khám phá các khóa học khác của giảng viên!
Khám phá các khóa học khác trong cùng lĩnh vực!