logo by @sawaratsuki1004

React

المكتبة الخاصة بواجهات المستخدم الأصلية والويب

إنشاء واجهات المستخدم من المكونات

يتيح لك React إنشاء واجهات مستخدم من أجزاء فردية تسمى المكونات. قم بإنشاء مكونات React الخاصة بك مثل الصورة المصغرة وزر الإعجاب و فيديو. ثم قم بدمجها في شاشات وصفحات وتطبيقات كاملة.

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 يمنحك نفس الشعور. فهو مصمم للسماح لك بدمج المكونات التي كتبها أشخاص مستقلون وفرق ومؤسسات بسلاسة.

كتابة المكونات باستخدام الكود والترميز

مكونات 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 ? 'Videos' : 'Video';
heading = count + ' ' + noun;
}
return (
<section>
<h2>{heading}</h2>
{videos.map(video =>
<Video key={video.id} video={video} />
)}
</section>
);
}

يُطلق على صيغة ترميز النص هذه اسم 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={`No matches for “${searchText}”`} />
</>
);
}

لا يتعين عليك إنشاء صفحتك بالكامل في React. أضف React إلى صفحتك HTML الحالية، وقم بعرض مكونات React التفاعلية في أي مكان بها.

انتقل إلى المجموعة الكاملة باستخدام إطار عمل

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 هو أيضًا بنية معمارية. تتيح لك الأطر التي تنفذها جلب البيانات في مكونات غير متزامنة تعمل على الخادم أو حتى أثناء البناء. اقرأ البيانات من ملف أو قاعدة بيانات، ثم مررها إلى مكوناتك التفاعلية.

استخدم الأفضل من كل منصة

يحب الناس تطبيقات الويب والتطبيقات الأصلية لأسباب مختلفة. يتيح لك React إنشاء تطبيقات الويب والتطبيقات الأصلية باستخدام نفس المهارات. فهو يعتمد على نقاط القوة الفريدة لكل منصة لجعل واجهاتك تبدو مناسبة تمامًا على كل منصة.

example.com

البقاء على اتصال دائم بالويب

يتوقع الأشخاص أن يتم تحميل صفحات تطبيقات الويب بسرعة. على الخادم، يتيح لك React بدء بث HTML أثناء استمرارك في جلب البيانات، وملء المحتوى المتبقي تدريجيًا قبل تحميل أي كود JavaScript. على العميل، يمكن لـ React استخدام واجهات برمجة تطبيقات الويب القياسية للحفاظ على استجابة واجهة المستخدم الخاصة بك حتى في منتصف العرض.

3:05 PM

اذهب إلى الأصل الحقيقي

يتوقع الناس أن تبدو التطبيقات الأصلية وكأنها منصاتهم. React Native و Expo تتيح لك إنشاء تطبيقات في React لنظامي التشغيل Android وiOS والمزيد. تبدو هذه التطبيقات وكأنها أصلية لأن واجهات المستخدم الخاصة بها أصلية حقًا. إنها ليست عرضًا للويب - حيث تقدم مكونات React الخاصة بك عروض Android وiOS الحقيقية التي توفرها المنصة.

مع React، يمكنك أن تكون مطور ويب ومطورًا أصليًا. يمكن لفريقك الشحن إلى العديد من المنصات دون التضحية بتجربة المستخدم. يمكن لمؤسستك ربط صوامع المنصات، وتشكيل فرق تمتلك الميزات بالكامل من البداية إلى النهاية.

قم بالتحديث عندما يكون المستقبل جاهزًا

تتعامل React مع التغييرات بعناية. يتم اختبار كل التزام React على الأسطح المهمة للأعمال مع أكثر من مليار مستخدم. يساعد أكثر من 100000 مكون React في Meta في التحقق من صحة كل استراتيجية هجرة.

يبحث فريق React دائمًا عن كيفية تحسين React. تستغرق بعض الأبحاث سنوات حتى تؤتي ثمارها. لدى React معيار مرتفع لأخذ فكرة بحثية إلى الإنتاج. فقط الأساليب المثبتة تصبح جزءًا من React.

انضم إلى مجتمع المكون من ملايين

لست وحدك. يزور مليونا مطور من جميع أنحاء العالم مستندات React كل شهر. React هو شيء يمكن للأشخاص والفرق الاتفاق عليه.

People singing karaoke at React Conf
Sunil Pai speaking at React India
A hallway conversation between two people at React Conf
A hallway conversation at React India
Elizabet Oliveira speaking at React Conf
People taking a group selfie at React India
Nat Alison speaking at React Conf
Organizers greeting attendees at React India

لهذا السبب، يعد React أكثر من مجرد مكتبة أو بنية أو حتى نظام بيئي. React عبارة عن مجتمع. إنه مكان يمكنك من خلاله طلب المساعدة والعثور على الفرص ومقابلة أصدقاء جدد. ستلتقي بكل من المطورين والمصممين، والمبتدئين والخبراء، والباحثين والفنانين، والمعلمين والطلاب. قد تكون خلفياتنا مختلفة جدًا، لكن React تتيح لنا جميعًا إنشاء واجهات مستخدم معًا.

logo by @sawaratsuki1004

مرحبًا بك في مجتمع React

البدء