لطفا جهت اطلاع از آخرین دوره ها و اخبار سایت در
کانال تلگرام
عضو شوید.
آموزش React & TypeScript - راهنمای عملی
React & TypeScript - The Practical Guide
نکته:
آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
نمونه ویدیوها:
توضیحات دوره:
برنامههای React ایمن بسازید و از TypeScript برای بهبود مؤلفهها، مدیریت حالت، Redux و کد عوارض جانبی خود استفاده کنید. آموزش ساخت برنامههای React با TypeScript مقدمهای ساختاریافته برای TypeScript استفاده از مفاهیم پایه و پیشرفته TypeScript ساخت مؤلفههای پویا و بسیار انعطافپذیر با React و TypeScript ساخت مؤلفههای پیشرفته و بسیار پویا به روشی مطمئن از نوع استفاده از TypeScript با Context API React و useReducer() Hook مدیریت حالت و رویدادها با React و TypeScript استفاده از TypeScript با Redux برای مدیریت حالت جهانی ایمن پیش نیازها: دانش اولیه React در مورد مفاهیم اصلی (components, JSX, state) مورد نیاز است بدون نیاز به دانش قبلی TypeScript
TypeScript یک فناوری شگفتانگیز است که به توسعهدهندگان کمک میکند تا کد بهتری با خطاهای کمتر بنویسند - فقط به این دلیل که به شما اجازه میدهد هنگام نوشتن کد، خطاهای مربوط به نوع را برطرف کنید (بهجای آزمایش برنامه).
اما استفاده از TypeScript با React گاهی اوقات می تواند مشکل باشد. به خصوص هنگام ساخت اجزای پیچیده تر و پویا، تعریف انواع مناسب می تواند چالش برانگیز باشد.
به همین دلیل این دوره را ساختم!
زیرا این دوره به شما یاد می دهد که چگونه از TypeScript با React استفاده کنید - و البته، این دوره شما را با تمام الگوهای مفاهیم اصلی که برای کار با کامپوننت ها، حالت ها و عوارض جانبی بیشتر به روشی ایمن از نظر نوع نیاز دارید آشنا می کند. !
این دوره:
آموزش اینکه چرا استفاده از TypeScript در پروژه های React خود ممکن است ایده خوبی باشد
مفاهیم کلیدی TypeScript را که به آنها نیاز دارید - به طور کلی هنگام کار با React آشنا می کنیم
کارتان را با استفاده از TypeScript با React شروع کنید - برای کامپوننتها، موارد بیشتری را بیان کنید
نمونههای الگوهای پیچیده و پیشرفتهتر را کاوش کنید
به شما در ساخت اجزای پویا یا حتی چند شکلی به روشی ایمن کمک می کند
به شما یاد می دهد که چگونه از TypeScript با Context API React استفاده کنید
کاوش کنید که چگونه می توانید کد مورد استفاده با useReducer() را با کمک TypeScript بهبود ببخشید
در حال واکشی داده ها () useEffect با TypeScript پوشش دهید
از کتابخانه محبوب Redux به روشی ایمن استفاده کنید
چندین پروژه نمایشی بسازید یا بهبود ببخشید تا بتوان دانش شما را به کار گرفت
در پایان دوره، میتوانید از TypeScript در پروژههای React (آینده) خود استفاده کنید و کدهای بهتر و ایمنتر بنویسید.
پیش نیازهای دوره:
هیچ دانش قبلی TypeScript مورد نیاز نیست - اگرچه دانش پایه کمک خواهد کرد (اما دوره شامل یک ماژول مقدمه است)
دانش اولیه React (کامپوننتها، JSX، حالت) IS مورد نیاز است - مفاهیم پیشرفتهتر توضیح داده خواهد شد
سرفصل ها و درس ها
معرفی
Introduction
به دوره خوش آمدید!
Welcome To The Course!
چرا React و TypeScript؟
Why React & TypeScript?
درباره دوره و محتوای دوره
About The Course & Course Content
چگونه از دوره بیشترین بهره را ببریم
How To Get The Most Out Of The Course
جامعه یادگیری و منابع دوره
Learning Community & Course Resources
ایجاد و استفاده از پروژه های React + TypeScript
Creating & Using React + TypeScript Projects
مبانی TypeScript و مفاهیم اصلی
TypeScript Basics & Core Concepts
معرفی ماژول
Module Introduction
راه اندازی TypeScript و استفاده از TypeScript
TypeScript Setup & Using TypeScript
کار با انواع: استنتاج تایپ و حاشیه نویسی نوع صریح
Working with Types: Type Inference & Explicit Type Annotations
انواع اولیه اولیه
Basic Primitive Types
فراخوانی کامپایلر TypeScript
Invoking The TypeScript Compiler
ترکیب انواع اتحادیه انواع (انواع جایگزین)
Combining Types Union Types (Alternative Types)
کار با Object Types
Working with Object Types
کار با انواع آرایه
Working with Array Types
افزودن انواع به توابع - پارامترها و انواع ارزش بازگشتی
Adding Types to Functions - Parameter & Return Value Types
تعریف انواع توابع
Defining Function Types
ایجاد انواع سفارشی/نام مستعار نوع
Creating Custom Types / Type Aliases
تعریف انواع اشیا با رابط ها
Defining Object Types with Interfaces
رابط ها در مقابل انواع سفارشی
Interfaces vs Custom Types
انواع ادغام
Merging Types
خاص بودن با انواع تحت اللفظی
Being Specific With Literal Types
افزودن محافظ های نوع
Adding Type Guards
محافظ تایپ و تنگ کردن تایپ - نگاهی دقیق تر
Type Guards & Type Narrowing - A Closer Look
ایجاد حس از انواع عمومی
Making Sense Of Generic Types
خلاصه
Summary
استفاده از TypeScript با React - Essentials
Using TypeScript with React - Essentials
معرفی ماژول
Module Introduction
ایجاد یک پروژه React + TypeScript
Creating a React + TypeScript Project
درک نقش tsconfig.json
Understanding the Role of tsconfig.json
ساختن اولین جزء و مواجهه با یک نوع گمشده
Building a First Component & Facing a Missing Type
تعریف انواع لوازم کامپوننت
Defining Component Props Types
ذخیره سازی Props Types به عنوان یک نوع سفارشی یا رابط
Storing Props Types as a Custom Type or Interface
تعریف یک نوع برای Props با "کودکان"
Defining a Type for Props with "children"
لوازم جانبی و لوازم «کلیدی» ویژه
Component Props & The Special "key" Prop
روش دیگری برای تایپ کامپوننت ها
Another Way Of Typing Components
تمرین: ایجاد یک کامپوننت هدر
Exercise: Creating a Header Component
با استفاده از useState() و TypeScript
Using useState() and TypeScript
کار با ایالت و ارزشهای مبتنی بر دولت
Working with State & Outputting State-based Values
تمرین دیگری و استفاده مجدد از انواع در میان فایل ها
Another Exercise & Reusing Types Across Files
عبور توابع به عنوان ارزش - به روشی ایمن از نظر نوع
Passing Functions as Values - In A Type-Safe Way
مدیریت و تایپ رویدادها
Handling & Typing Events
کار با انواع رویدادهای عمومی
Working with Generic Event Types
استفاده از useRef() با TypeScript
Using useRef() with TypeScript
مدیریت ورودی کاربر به روشی کاملاً ایمن
Handling User Input In A Type-Safe Way
خلاصه
Summary
انواع اجزای پیشرفته - اجزای پویا، اجزای چند شکلی و موارد دیگر
Advanced Component Types - Dynamic Components, Polymorphic Components & More
معرفی ماژول
Module Introduction
ساختن یک مؤلفه پویاتر و انعطاف پذیرتر
Building a More Dynamic & Flexible Component
مشکل: اجزای انعطاف پذیر با ترکیبات پایه مورد نیاز
Problem: Flexible Components With Required Prop Combinations
راه حل: ساخت اجزا با اتحادیه های تبعیض آمیز
Solution: Building Components with Discriminated Unions
پیش به سوی یک پروژه جدید
Onwards To A New Project
ساخت یک کامپوننت پایه Wrapper
Building a Basic Wrapper Component
ساخت اجزای Wrapper بهتر با ComponentPropsWithoutRef
Building Better Wrapper Components with ComponentPropsWithoutRef
ساخت کامپوننت Wrapper که عناصر مختلف را ارائه می کند
Building a Wrapper Component That Renders Different Elements
کار با گزارههای نوع و مواجهه با محدودیتهای TypeScript
Working with Type Predicates & Facing TypeScript Limitations
ساخت مولفه چند شکلی پایه
Building a Basic Polymorphic Component
ساخت یک مؤلفه چند شکلی بهتر با ژنریک
Building a Better Polymorphic Component with Generics
مثالها: ایدههای اجزای بیشتر
Examples: More Component Ideas
استفاده از forwardRef با TypeScript
Using forwardRef with TypeScript
ساختن کامپوننت Wrapper دیگر (کامپوننت فرم سفارشی)
Building Another Wrapper Component (Custom Form Component)
منطق به اشتراک گذاری با "ناشناخته" و ارسال را تایپ کنید
Sharing Logic with "unknown" & Type Casting
جایگزین: اجتناب از نوع ریخته گری با "as"
Alternative: Avoiding Type Casting with "as"
افشای APIهای مؤلفه با useImperativeHandle (با TypeScript)
Exposing Component APIs with useImperativeHandle (with TypeScript)
خلاصه
Summary
حالت پیشرفته نوع ایمن با Context API و useReducer()
Advanced Type-Safe State with Context API & useReducer()
معرفی ماژول
Module Introduction
پروژه شروع
The Starting Project
ایجاد زمینه و انواع برازش
Creating a Context & Fitting Types
ایجاد یک مؤلفه ارائه دهنده نوع ایمن
Creating a Type-Safe Provider Component
دسترسی به Context Type-Safe با یک قلاب سفارشی
Accessing Context Type-Safe With A Custom Hook
شروع با useReducer() و TypeScript
Getting Started with useReducer() & TypeScript
یک عملکرد کاهش دهنده پایه و یک نوع عمل پایه
A Basic Reducer Function & A Basic Action Type
تغییر حالت از طریق تابع کاهنده
Changing State via the Reducer Function
استفاده از انواع اقدام بهتر
Using Better Action Types
سیم کشی همه چیز و اتمام برنامه
Wiring Everything Up & Finishing the App
عوارض جانبی، useEffect() و واکشی داده با TypeScript
Side Effects, useEffect() & Data Fetching with TypeScript
معرفی ماژول
Module Introduction
ایجاد اولین اثر جانبی
Creating a First Side Effect
استفاده از useEffect() با TypeScript
Using useEffect() with TypeScript
مدیریت بازه زمانی با Refs & The Effect Cleanup Function
Managing An Interval With Refs & The Effect Cleanup Function
useEffect() و وابستگی های آن
useEffect() & Its Dependencies
یک اشکال کوچک و راه حل آن
A Small Bug & Its Solution
به بعد به واکشی داده ها!
Onwards to Data Fetching!
ساخت یک Utility "get" تابع با TypeScript
Building a Utility "get" Function with TypeScript
واکشی و تبدیل داده ها
Fetching & Transforming Data
جایگزین: استفاده از کتابخانه "zod" برای اعتبارسنجی داده های پاسخ
Alternative: Using the "zod" Library for Response Data Validation
جایگزین: یک تابع "دریافت" عمومی
Alternative: A Generic "get" Function
رسیدگی به وضعیت های بارگیری و خطا
Handling Loading & Error States
استفاده از Redux با TypeScript
Using Redux with TypeScript
معرفی ماژول
Module Introduction
پروژه شروع
The Starting Project
تنظیم Redux
Redux Setup
ایجاد یک فروشگاه Redux و اولین برش
Creating a Redux Store & A First Slice
تنظیم نوع حالت
Setting a State Type
اولین کاهش دهنده و کنترل نوع بار بار عمل
A First Reducer & Controlling the Action Payload Type
اضافه کردن منطق به Reducer
Adding Logic To The Reducer
ارائه فروشگاه Redux
Providing the Redux Store
عملیات ارسال و تنظیم قلاب useDispatch
Dispatching Actions & Adjusting the useDispatch Hook
ایجاد یک Type-Safe useSelector Hook
Creating a Type-Safe useSelector Hook
انتخاب و تبدیل دادههای فروشگاه Redux
Selecting & Transforming Redux Store Data
نکات پایانی و خلاصه
Finishing Touches & Summary
پروژه تمرین: برنامه مدیریت "رزرو یک جلسه".
Practice Project: A "Book a Session" Management Application
نمایش نظرات