PracticU

ספריית react-redux בתוך FC

בלי כתוביותעם כתוביות
PracticU › קורס ריאקט - React › ספריית react-redux בתוך FC
מילון מושגים:
React - ספריית JavaScript לבניית ממשקי משתמש מבוססי רכיבים, שפותחה על ידי פייסבוק.
רכיב - יחידת בניין עצמאית וניתנת לשימוש חוזר בתוך מערכת או ממשק משתמש, שאחראית על חלק מוגדר מהתפקוד.
פונקציה - קטע קוד בעל שם שמבצע משימה מוגדרת, מקבל ערכי קלט (פרמטרים) ויכול להחזיר תוצאה. מאפשרת לארגן קוד ולהשתמש בו שוב.
מחלקה - תבנית בתכנות מונחה עצמים שמגדירה אילו נתונים ופעולות יהיו לאובייקטים שנוצרים ממנה.

ספריית react-redux בתוך FC
react-redux כוללת גם React Hooks לעבודה עם Functional Component, והם מחליפים את mapStateToProps, את mapDispatchToProps ואת connect מהשיעור הקודם. כך הקוד של הקומפוננטה נעשה קצר בהרבה.
מה משתנה בקומפוננטה
1. המרה לפונקציה: במקום class כותבים function שמחזירה אלמנט JSX. אין extends, אין render, ואין צורך ב-props בדוגמה הזאת. המחיקה כוללת גם את שתי הפונקציות החיצוניות ואת connect.
2. קריאת נתונים עם useSelector: מקבל פונקציה שמקבלת את ה-AppState ומחזירה את מה שצריך, והיא מקבילה ל-mapStateToProps. כך const count = useSelector(...) מחליף בשורה אחת את כל הקוד. אפשר לקרוא לה כמה פעמים, למשל כדי להביא גם topProduct עם find.
3. שליחה עם useDispatch: מחזיר את ה-dispatch של Redux, ואפשר לציין את סוג הפעולה, כאן ProductAction. הוא מחליף את mapDispatchToProps.
בדיקה
אחרי רענון נוסף מוצר, והמספר עלה מ-77 ל-78. אחרי מחיקה הוא ירד חזרה ל-77.
שימו לב
הסרוויס החיצוני לא נחוץ בדוגמה הזאת, אבל אפשר לשלב אותו אם יש בקומפוננטה לוגיקה. ה-Hooks חוסכים גישה ישירה ל-store ועבודה עם כל הנתונים ברמת האפליקציה.
אחרי השיעור אפשר לחבר ל-Redux גם קומפוננטת פונקציה בשני Hooks בלבד.
השיעור הבא בקורס: רידקס - יצירת Middleware

פרקי ההרצאה: ספריית react-redux בתוך FC

  1. 00:00

    React Redux ב-Functional Component

  2. 00:41

    המרה ל-functional component

  3. 01:35

    שימוש ב-useSelector hook

  4. 02:15

    מיפוי ה-upState ל-count

תמלול ההרצאה: ספריית react-redux בתוך FC

הטקסט המלא של הדקות הראשונות בהרצאה «ספריית react-redux בתוך FC» בקורס הווידאו של PracticU – כתוביות בעברית עם זמן התחלה לכל פסקה. כך תוכלו לקרוא ולחפש את הנושאים לפני שמתחילים ללמוד.

  1. 00:02

    הספרייה המגניבה הזאת React Redux מכילה גם פונקציות מיוחדות לעבודה עם Functional Components. הפונקציות האלה זה React Hooks מיוחדות שמחליפות את שני החבר'ה האלה עבור Functional Component.

  2. 00:20

    זה מה שאנחנו רוצים לראות כעת. מה שאני רוצה לעשות זה לשכפל את כל הקומפוננטה הזאת. בואו רגע רק נשים את זה בהערה.

  3. 00:32

    כפלתי את כל הקומפוננטה ואני רוצה לבנות אותה כ-functional component ולא כ-class component ולראות איך אפשר לעבוד איתה אם יש לנו functional component. אז קודם כל במקום class יש פה function ואין לנו פה את ה-extend הזה והפונקציה כמובן מחזירה את ה-jsX אלמנט במקום public render.

  4. 00:57

    בואו ניפטר רגע מזה וניפטר מזה. אין לנו props, כי אנחנו functional component, האמת פה חסר לי כזה דבר. ב-functional component כמובן יכול להיות props, אבל אנחנו לא צריכים את ה-props, אין לנו פה את ה-component הזאת.

  5. 01:14

    מה עוד? אנחנו פשוט מאוד, בואו ניפטר גם משתי הפונקציות האלה, אנחנו לא עובדים איתם, אנחנו לא עובדים עם קונקט, זה נחזיר, וניפטר מזה ומזה.

  6. 01:29

    האמת שזה אני צריך? כן, זה אני צריך. אורייט, אז קודם כל, כמו שאתם רואים, הקוד הרבה הרבה הרבה יותר קצר. Functional Component, כאן אני יכול לקרוא ל-react hooks, וה-react Hooks שאנחנו צריכים, אחת נקראת useSelector, שימו לב שזה מגיע מהספרייה שאנחנו מדברים עליה, React Redux, ו-useSelector אומרת כזה דבר: תן לי פונקציה

  7. 01:56

    שמקבלת את ה-upState והיא מחזירה לך ספציפית מה שאתה צריך. א', אתה יכול לקרוא לה פעם אחת ולהביא אובייקט אחד, או אתה יכול לקרוא לה כמה פעמים ולהביא ריטים ספציפיים.

  8. 02:11

    והיא מקבילה ל-map state to props. זאת אומרת שכתבו את map state to props על ידי use selector. אז אנחנו רוצים למפות את ה-upstate שהוא מסוג כרגע any ל-count.

  9. 02:27

    אוקיי, אז כל מה שאנחנו רוצים לעשות זה להחזיר את זה, בואו נחזיר את זה מפה. הפונקציה הזאת אז מחזירה לנו את אקאונט, קונסט אקאונט שווה.

  10. 02:41

    והנה יש לנו את כל הקוד הזה בשורה אחת, מבלי הצורך להשתמש בפונקציה נפרדת ולחבר אותה בהייר אורדר קומפוננט וכדומה.

לקורס המלא: קורס ריאקט אונליין

ההרצאה הקודמת: ספריית react-redux בתוך CC

ההרצאה הבאה: רידקס - יצירת Middleware

הרצאות קשורות מקורסים אחרים

  • התקנת ספריית סלניום
  • תנאי בתוך תנאי
  • פקודת Select בתוך Select
  • אובייקט בתוך אובייקט ב-PowerShell

קורסים נוספים במסלול

  • קורס יסודות HTML - בניית אתר אינטרנט פשוט
  • קורס CSS 3 - בדגש על Flex & Grid
  • קורס Javascript כולל JQuery
  • קורס ג'אווה סקריפט מעשי - JavaScript
  • קורס TypeScript
  • קורס NodeJS