React

הספרייה לממשקי משתמש לווב ולנייטיב

צרו ממשקי משתמש מקומפוננטות

React מאפשרת לכם לבנות ממשקי משתמש מחלקים נפרדים שנקראים קומפוננטות. צרו קומפוננטות React משלכם כמו Thumbnail, LikeButton ו-Video, ואז חברו אותן למסכים, דפים ואפליקציות שלמים.

Video.js

function Video({ video }) {
return (
<div>
<Thumbnail video={video} />
<a href={video.url}>
<h3>{video.title}</h3>
<p>{video.description}</p>
</a>
<LikeButton video={video} />
</div>
);
}

בין אם אתם עובדים לבד או יחד עם אלפי מפתחים אחרים, העבודה עם React מרגישה אותו דבר. היא תוכננה כך שתוכלו לשלב בצורה חלקה קומפוננטות שנכתבו על ידי אנשים, צוותים וארגונים שונים.

כתבו קומפוננטות עם קוד ו-Markup

קומפוננטות React הן פונקציות JavaScript. רוצים להציג תוכן בצורה מותנית? השתמשו במשפט if. רוצים להציג רשימה? נסו להשתמש ב-map() על מערך. ללמוד React זה ללמוד תכנות.

VideoList.js

function VideoList({ videos, emptyHeading }) {
const count = videos.length;
let heading = emptyHeading;
if (count > 0) {
const noun = count > 1 ? 'סרטונים' : 'סרטון';
heading = count + ' ' + noun;
}
return (
<section>
<h2>{heading}</h2>
{videos.map(video =>
<Video key={video.id} video={video} />
)}
</section>
);
}

תחביר ה-Markup הזה נקרא JSX. זו הרחבת תחביר של JavaScript ש-React הפכה לפופולרית. כשכותבים JSX קרוב ללוגיקת הרינדור הרלוונטית, קומפוננטות React נעשות קלות יותר ליצירה, תחזוקה והסרה.

הוסיפו אינטראקטיביות בכל מקום שצריך

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

SearchableVideoList.js

import { useState } from 'react';

function SearchableVideoList({ videos }) {
const [searchText, setSearchText] = useState('');
const foundVideos = filterVideos(videos, searchText);
return (
<>
<SearchInput
value={searchText}
onChange={newText => setSearchText(newText)} />
<VideoList
videos={foundVideos}
emptyHeading={`אין תוצאות עבור “${searchText}”`} />
</>
);
}

לא חייבים לבנות את כל הדף ב-React. אפשר להוסיף React לדף HTML קיים, ולרנדר בו קומפוננטות React אינטראקטיביות בכל מקום.

עברו ל-full-stack עם פריימוורק

React היא ספרייה. היא מאפשרת להרכיב קומפוננטות, אבל לא מכתיבה איך לבצע ניתוב ושליפת נתונים. כדי לבנות אפליקציה שלמה עם React, אנחנו ממליצים על פריימוורק React מלא כמו Next.js או Remix.

confs/[slug].js

import { db } from './database.js';
import { Suspense } from 'react';

async function ConferencePage({ slug }) {
const conf = await db.Confs.find({ slug });
return (
<ConferenceLayout conf={conf}>
<Suspense fallback={<TalksLoading />}>
<Talks confId={conf.id} />
</Suspense>
</ConferenceLayout>
);
}

async function Talks({ confId }) {
const talks = await db.Talks.findAll({ confId });
const videos = talks.map(talk => talk.video);
return <SearchableVideoList videos={videos} />;
}

React היא גם ארכיטקטורה. פריימוורקים שמממשים אותה מאפשרים שליפת נתונים מתוך קומפוננטות אסינכרוניות שרצות בשרת או אפילו בזמן build. אפשר לקרוא נתונים מקובץ או ממסד נתונים ולהעביר אותם לקומפוננטות האינטראקטיביות שלכם.

קחו את הטוב ביותר מכל פלטפורמה

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

example.com

נאמנים לווב

משתמשים מצפים שדפי ווב ייטענו מהר. בצד השרת, React מאפשרת להתחיל להזרים HTML בזמן שעדיין שולפים נתונים, ולמלא בהדרגה את שאר התוכן עוד לפני שקוד JavaScript נטען. בצד הלקוח, React יכולה להשתמש ב-Web APIs סטנדרטיים כדי לשמור על ממשק משתמש תגובתי גם באמצע רינדור.

1:10 AM

עברו לנייטיב אמיתי

משתמשים מצפים שאפליקציות נייטיב ייראו וירגישו כמו הפלטפורמה שלהן. React Native ו- Expo מאפשרות לבנות אפליקציות ב-React ל-Android, ל-iOS ולעוד פלטפורמות. הן נראות ומרגישות נייטיב כי ה-UI שלהןבאמת נייטיב. זו לא תצוגת web view; קומפוננטות React שלכם מרנדרות תצוגות אמיתיות של Android ו-iOS שסופקו על ידי הפלטפורמה.

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

שדרגו כשהעתיד מוכן

React ניגשת לשינויים בזהירות. כל commit של React נבדק על משטחים עסקיים קריטיים עם יותר ממיליארד משתמשים. מעל 100,000 קומפוננטות React ב-Meta עוזרות לאמת כל אסטרטגיית מיגרציה.

צוות React תמיד חוקר איך לשפר את React. לפעמים לוקח שנים עד שמחקר מבשיל. ל-React יש רף גבוה לפני שמעבירים רעיון מחקרי לפרודקשן. רק גישות מוכחות הופכות לחלק מ-React.

הצטרפו לקהילה של מיליונים

אתם לא לבד. שני מיליון מפתחים מכל העולם מבקרים בתיעוד של React בכל חודש. React היא משהו שאנשים וצוותים יכולים להסכים עליו יחד.

אנשים שרים קריוקי ב-React Conf
Sunil Pai מרצה ב-React India
שיחת מסדרון בין שני אנשים ב-React Conf
שיחת מסדרון ב-React India
Elizabet Oliveira מרצה ב-React Conf
אנשים מצלמים סלפי קבוצתי ב-React India
Nat Alison מרצה ב-React Conf
מארגנים שמברכים את המשתתפים ב-React India

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

ברוכים הבאים ל-קהילת React

התחלה