Udhëzues

Çfarë është React? Udhëzues i thjeshtë për jo-zhvilluesit

React është një librari JavaScript për ndërtimin e ndërfaqeve të përdoruesit — pjesa e aplikacionit që njerëzit e shohin dhe klikojnë. Ndërton ekrane nga pjesë të ripërdorshme të quajtura komponentë, si një buton, një kartë produkti ose një faqe e tërë, dhe React e mban ekranin në përputhje me të dhënat: kur të dhënat ndryshojnë, React përditëson pjesët e faqes që varen prej tyre. U krijua te Facebook (tani Meta), është me kod të hapur dhe është një nga mënyrat më të përdorura për të ndërtuar aplikacione web.

Pse ka rëndësi kur ndërton me AI

Nëse ndërton një aplikacion web me një mjet AI, ka gjasa të mirë që është shkruar në React. Shumë ndërtues aplikacionesh me AI përdorin React si parazgjedhje, sepse është i njohur, mirë i dokumentuar dhe ka një sasi të madhe kodi React nga i cili modelet e AI-së kanë mësuar.

Nuk të duhet të shkruash React për të ndërtuar me AI. Por të dish pak të ndihmon të:

  • Përshkruash ndryshimet saktë. “Ndrysho komponentin ProductCard që çmimi të jetë i trashë” është më e qartë sesa “bëj që çmimet të dallojnë diku”.
  • Kuptosh gabimet. Mesazhe si “Cannot read properties of undefined” ose “Too many re-renders” kuptohen më mirë.
  • Bësh zgjedhje të arsyeshme. Aplikacionet e thjeshta React renderohen në shfletues, gjë që ndikon në dukshmërinë në kërkim dhe shpejtësinë e ngarkimit të parë. Ta dish këtë të ndihmon të vendosësh kur të kërkosh një konfigurim tjetër.
  • Të punosh më vonë me zhvillues. React është një aftësi e zakonshme, kështu që një zhvillues zakonisht mund të marrë përsipër një bazë kodi React.

Një analogji e përditshme

Mendo për LEGO. Në vend që të skalitësh një model të tërë nga një bllok i vetëm, e ndërton nga tulla standarde. Disa tulla bëjnë një rrotë; katër rrota dhe disa pjesë të tjera bëjnë një makinë. Nëse dëshiron që çdo makinë të ketë rrota të kuqe, e ndryshon dizajnin e rrotës një herë.

Komponentët React janë tullat. Një komponent Button përdoret brenda një ProductCard, që përdoret brenda një ProductGrid, që është pjesë e ShopPage. Ndrysho Button një herë, dhe çdo buton në aplikacion ndryshon.

Pjesa tjetër e analogjisë: imagjino që modeli LEGO ndërtohet vetë sa herë ndryshon udhëzimet. Kjo është tjetra e React: përshkruan si duhet të duket ekrani për të dhënat aktuale, dhe React përcakton çfarë duhet ndryshuar në faqe.

Idetë kryesore

Komponentët

Një komponent është një funksion JavaScript që kthen një pjesë ndërfaqeje. Dokumentacioni i React e përshkruan një komponent si një pjesë të UI-së që ka logjikën dhe pamjen e vet. Emrat e komponentëve fillojnë me shkronjë të madhe.

JSX

Komponentët shkruhen zakonisht në JSX, që duket si HTML i përzier me JavaScript:

function Greeting() {
  return <h1>Welcome back!</h1>;
}

JSX është opsional, por dokumentacioni i React thotë se shumica e projekteve e përdorin. Konvertohet në JavaScript të thjeshtë përpara se të ekzekutohet në shfletues.

Props

Props janë hyrjet që i kalon një komponenti, si cilësimet e një pjese të ripërdorshme:

<ProductCard name="Lavender Candle" price={24} />

I njëjti ProductCard mund të shfaqë çdo produkt.

State

State është informacion që një komponent e mban mend dhe që mund të ndryshojë ndërsa aplikacioni po funksionon — nëse një menu është hapur, çfarë është shkruar në një kutii kërkimi, sa artikuj janë në shportë. Kur ndryshon state, React e rirenderon komponentin që ekrani të përputhet.

Hooks

Hooks janë funksione emrat e të cilave fillojnë me use, si useState (mban mend një vlerë) dhe useEffect (ekzekuton kod pas renderimit, për shembull për të marrë të dhëna). Do t’i shohësh kudo në kodin React të gjeneruar nga AI.

Një shembull i punuar: një numërues shportë

Të themi se dyqani yt online ka një buton “Shto në shportë” dhe një ikonë shporte që shfaq numrin e artikujve. Në React duket më ose më pak kështu:

import { useState } from "react";

function Shop() {
  const [cartCount, setCartCount] = useState(0);

  return (
    <div>
      <CartIcon count={cartCount} />
      <ProductCard
        name="Lavender Candle"
        price={24}
        onAdd={() => setCartCount(cartCount + 1)}
      />
    </div>
  );
}

function CartIcon({ count }) {
  return <span>Cart ({count})</span>;
}

function ProductCard({ name, price, onAdd }) {
  return (
    <div>
      <h2>{name}</h2>
      <p>${price}</p>
      <button onClick={onAdd}>Add to cart</button>
    </div>
  );
}

Çfarë ndodh kur një blerës klikon “Shto në shportë”:

  1. Butoni onClick thërret onAdd, që thërret setCartCount.
  2. React e përditëson state cartCount nga 0 në 1.
  3. React e rirenderon Shop, duke kaluar count={1} te CartIcon.
  4. Faqja tani shfaq “Cart (1)”. Askush nuk shkroi kod që thoshte “gjej tekstin e shportës dhe ndrysho” — ekrani ndjek të dhënat.

Vini re edhe kufijtë. Ky numërim jeton në memorien e shfletuesit. Rifreskoje faqen dhe kthehet në 0. Për ta ruajtur shportën, do ta ruaje diku të qëndrueshëm — një cookie, depozitimin e shfletuesit, ose një bazë të dhënash përmes backend-it tënd. React e menaxhon ekranin; nuk ruan të dhënat e tua.

Ku përshtatet React në një aplikacion web

PjesaÇfarë bënZgjedhje të zakonshme
Librari UINdërton ndërfaqenReact
GjuhaNë çfarë shkruhet kodiJavaScript ose TypeScript
Build toolShndërron kodin burimor në skedarë që ngarkon shfletuesi; ekzekuton serverin e zhvillimitVite
Framework (opsional)Shton routing, renderim në server, ngarkim të dhënashNext.js, React Router
StilizimiSi duketTailwind CSS, skedarë CSS
BackendLogjika e biznesit, të dhënat, sekretetNode.js, Python dhe të tjerë
Baza e të dhënaveRuan të dhënatPostgres dhe të tjera

Një aplikacion “Vite + React” renderohet në shfletues (një single-page app). Një aplikacion Next.js mund të renderojë faqet në server më parë, gjë që ndihmon motorët e kërkimit dhe shpejtësinë e ngarkimit të parë.

Termat e zakonshëm të shpjeguar

TermiKuptimi
KomponentNjë pjesë ndërfaqeje e ripërdorshme, e shkruar si funksion.
JSXSintaksë si HTML brenda JavaScript, që përdoret për të përshkruar komponentët.
PropsHyrjet e kaluara te një komponent.
StateTë dhëna që një komponent i mban mend dhe që mund të ndryshojnë me kohë.
HookNjë funksion që fillon me use dhe shton veçori si state te një komponent.
Render / re-renderReact duke përcaktuar çfarë duhet të shfaqë ekrani, sërish pas ndryshimeve.
Single-page app (SPA)Një aplikacion që ngarkohet një herë dhe përditëson faqen me JavaScript në vend që të ngarkojë faqe të reja.
Renderimi në server (SSR)Prodhimi i HTML-së së një faqeje në server para se të dërgohet.
Paketë npmNjë librari kodi e ripërdorshme që mund ta instalosh, si një zgjedhës date ose librari grafikësh.
React NativeNjë projekt i lidhur për ndërtimin e aplikacioneve celulare native.

Gabimet dhe keqkuptimet e zakonshme

  • “React është një gjuhë programimi.” Është një librari e shkruar dhe e përdorur nga JavaScript (ose TypeScript).
  • “React ruan të dhënat e mia.” State jeton në shfletues dhe zhduket kur rifreskon. Të dhënat e qëndrueshme kërkojnë backend dhe bazë të dhënash.
  • Vendosja e sekreteve në kodin React. Gjithçka në një aplikacion React dërgohet te shfletuesi i vizitorit. Çelësat API aty janë publikë. Mbaji në server.
  • “Aplikacionet React nuk mund të renditen në kërkim.” Renderimi vetëm në klient është më i dobët për kërkimin, por renderimi paraprak ose në server e zgjidh pjesën më të madhe.
  • Komponentë shumë të mëdhenj. Një komponent me 1,000 rreshta është i vështirë për t’u ndryshuar në mënyrë të sigurt, si nga njerëzit ashtu edhe nga AI-ja. Kërko më të vegjël.
  • Supozimi se një aplikacion web React është aplikacion celulari. Ekzekutohet në shfletues, përfshirë në telefona, por nuk është një aplikacion nga App Store.

Çfarë t’i kërkosh ndërtuesit tënd të AI-së

  • “Ndaji këtë faqe në komponentë të vegjël, me emra, dhe më thuaj cilin skedar është secili.”
  • “Bëje komponentin ProductCard të ripërdorshëm, me name, price dhe image si props.”
  • “Ruaje shportën në bazën e të dhënave që të mbijetojë një rifreskim.”
  • “Mbaji të gjithë çelësat API në server; kodi React duhet të thërrasë API-n tonë.”
  • “Shto gjendje ngarkimi dhe gabimi për të dhënat që vijnë nga serveri.”
  • “Nëse dukshmëria në kërkim ka rëndësi për këto faqe, renderoji paraprakisht ose përdor një konfigurim të renderuar në server.”
  • “Shpjego me gjuhë të thjeshtë çfarë do të thotë ky gabim dhe nga cili komponent vjen.”

Për pamjen më të gjerë, shiko frontend kundrejt backend, dhe për të rishikuar atë që shkroi AI-ja, si të rishikosh kodin e gjeneruar nga AI.

React në Mythex

Nëse nuk kërkon ndryshe, Mythex fillon projekte të reja me Vite + React + TypeScript + Tailwind, me një pamje paraprake live që ekzekutohet ndërsa bisedon. Mund të emërosh një konfigurim tjetër në mesazhin e parë — për shembull “Përdor Next.js” ose “faqe statike HTML e thjeshtë” — dhe Mythex e zgjedh nga ajo që shkruan; nuk ka ekran cilësimesh për këtë. Faqja e dokumentacionit për si zgjidhet teknologjia shpjegon opsionet. Redaktuesi i kodit është vetëm për lexim në planin Free; në Pro mund ta ndryshosh kodin React drejtpërdrejt dhe ta eksportosh projektin për ta vazhduar diku tjetër.

Pyetje

Çfarë është React me fjalë të thjeshta?

React është një librari JavaScript për ndërtimin e ndërfaqeve të përdoruesit. Ndërton ekrane nga pjesë të ripërdorshme të quajtura komponentë, si një buton, një kartë produkti ose një faqe e tërë, dhe React e përditëson atë që shfaqet në ekran kur të dhënat nën to ndryshojnë.

A është React një framework apo një librari?

React e quan veten librari: fokusohet te ndërtimi i ndërfaqes. Frameworks të ndërtuara mbi të, si Next.js, shtojnë gjëra si routing, renderim në server dhe ngarkim të të dhënave.

Pse i përdorin React ndërtuesit e aplikacioneve me AI?

React është një nga mënyrat më të përdorura për të ndërtuar ndërfaqe web, kështu që ka një sasi të madhe kodi dhe dokumentacioni React nga të cilët modelet e AI-së mësojnë. Struktura e tij me komponentë përshtatet gjithashtu me ndryshime të vogla dhe të synuara.

A është React i keq për SEO?

Jo në vetvete. Një aplikacion React që renderon gjithçka në shfletues është më i vështirë për disa crawler-a ta lexojnë, por React mund të renderohet paraprakisht ose në server, për shembull me Next.js, dhe kjo e zgjidh shumicën e problemit.

A është React i njëjtë me React Native?

Jo. React ndërton ndërfaqe web që ekzekutohen në një shfletues. React Native përdor të njëjtat ide për të ndërtuar aplikacione native për iOS dhe Android. Ndajnë koncepte, por jo shumicën e blloqeve të tyre ndërtuese.

Mythex · Pricing · Ndërtoni çdo gjë me AI · Shablone faqesh dhe aplikacionesh · Mythex në krahasim · Fjalori i ndërtimit të aplikacioneve me AI · Mjete falas për ndërtimin e aplikacioneve me AI · English

English አማርኛ العربية Български বাংলা Bosanski Català Čeština Dansk Deutsch Ελληνικά Español Español (España) Eesti فارسی Suomi Français Français (Canada) ગુજરાતી हिन्दी Hrvatski Magyar Հայերեն Bahasa Indonesia Íslenska Italiano 日本語 ქართული Қазақ тілі ಕನ್ನಡ 한국어 Lietuvių Latviešu Македонски മലയാളം Монгол मराठी Bahasa Melayu မြန်မာ Norsk bokmål Nederlands ਪੰਜਾਬੀ Polski Português (Brasil) Português (Portugal) Română Русский Slovenčina Slovenščina Soomaali Srpski Svenska Kiswahili தமிழ் తెలుగు ไทย Tagalog Türkçe Українська اردو Tiếng Việt 简体中文 繁體中文(香港) 繁體中文(台灣)