A Next.js és a React for Developers ismerete

A React az egyik legnépszerűbb könyvtár a felhasználói felületek készítésére, a Next.js pedig az egyik legnépszerűbb keretrendszer a felhasználói felületek készítésére.

A Next.js a React használatával készült. Szóval sok hasonlóság van köztük. Nyilvánvaló, hogy összekeverjük a kettőt.

Merüljünk el mélyen ebbe a kettőbe, és nézzük meg, miben különböznek a zavar tisztázásában. Kezdjük a React-tal.

Reagálás: Kezdő lépések

A React egy nyílt forráskódú könyvtár a felhasználói felületek JavaScript használatával történő létrehozásához. A React egyoldalas webalkalmazások létrehozására szolgál. Mit értek egyoldalas alkalmazások alatt? Az alkalmazás egyetlen HTML dokumentummal fog rendelkezni, és szükség szerint frissíti.

Az egyoldalas webalkalmazások létrehozása jelenleg a legmagasabb csúcson van. És elmondhatjuk, hogy a React a legnépszerűbb könyvtár jelenleg ezen a területen. Nem túlzás.

Számos React csomag érhető el, amelyek megkönnyítik a fejlesztők életét. Ha webalkalmazásokról van szó, a React segítségével bármilyen típusú webes alkalmazást készíthetünk.

A Reactet a Facebook fejlesztette ki. Most már bárki hozzájárulhat ehhez. És a Facebook karbantartja.

Nézzük meg a React néhány funkcióját.

Virtuális DOM

A webalkalmazások frissítik annak bizonyos részeit anélkül, hogy más részeit most befolyásolnák, például megjelenítik a betöltőt az adatok lekérése közben, és frissítik a webalkalmazás adott részét a letöltött adatokkal. Ez a DOM frissítése a böngészőben, ha technikailag beszélünk.

Az olyan könyvtárak nélkül, mint a React, a vanília JavaScript használatával csináltuk volna, ami nem hatékony, mivel a DOM-műveletek nagyon költségesek. A React bevezeti a virtuális DOM koncepcióját a probléma kezelésére.

A virtuális DOM a valódi DOM másolata. Ha vannak frissítések, a React először frissíti azokat a virtuális DOM-ban, és összehasonlítja a valódi DOM-mal. És a React csak akkor frissíti a valódi DOM-ot, ha változások és csak megváltozott részek vannak. Így kevesebb műveletet hajt végre valódi DOM-on, jelentősen csökkentve a frissítési időt.

Az olyan könyvtárak nélkül, mint a React, a web nagyon lassú lett volna.

Alkatrészek

Az összetevők a React felhasználói felületének építőkövei. Azt mondhatjuk, hogy a Reactban minden összetevő. Ezek az összetevők újra felhasználhatók a React alkalmazásban.

Tegyük fel, hogy van egy gombunk, amelynek van néhány stíluskészlete. A Reactban létrehozhatunk egy olyan komponenst, amely a gombnak a neki átadott tulajdonságok alapján stílusokkal történő megjelenítéséért felel. A kellékek segítségével tetszés szerint testreszabhatjuk ezt a gombkomponenst. Így tudjuk újra felhasználni az összetevőket a React alkalmazásban.

  Javítsa ki az 1310-es hibát. Ellenőrizze, hogy rendelkezik-e hozzáféréssel a címtárhoz

Az összetevők segíthetnek alkalmazásunkat kis felhasználói felület blokkokba rendezni. Elrendezhetjük őket tetszés szerint.

JSX

Írhatunk HTML-t JSX-nek nevezett JS-ben. Úgy néz ki, mint a HTML, de ez JSX. Használhatjuk a JavaScriptet a JSX-szel, és ezzel együtt elérhetjük az összes HTML attribútumot.

A JSX a felhasználói felület szerkezetének meghatározására szolgál. Minden összetevő JSX-et ad vissza, amely a DOM-ban lesz renderelve.

Egyirányú adatfolyam

Az összetevők közötti adatáramlás szükséges ahhoz, hogy kisebbek legyenek. Ha nincs adatáramlásunk a komponensek között, akkor mindent egyetlen komponensben kell befogadnunk.

A reagálás követi az egyirányú adatáramlást, amely a szülőtől a gyermekig terjed. A szülőkomponensek adatait átadhatjuk a React gyermekkomponenseinek. A gyermekkomponens nem módosíthatja közvetlenül a szülőkomponens állapotát. Ezt a visszahívások átadásával lehet megtenni.

Az egyirányú adatáramlás egyszerűvé teszi a hibakeresést. Az összetevők sokkal egyszerűbbnek tűnnek, mivel nem minden összetevőnek kell fenntartania az állapotot.

A React tanulása nagyon egyszerű, ha ismeri a JavaScriptet. A React dokumentumok elegendőek a kezdéshez.

Next.js: Kezdő lépések

A Next.js egy react keretrendszer webes alkalmazások készítésére. A React tetejére épül. Vercel készítette. Tehát a React összes funkciója elérhető lesz benne. Mi a különleges a Next.js-ben? Lássunk néhány olyan funkciót, amelyek különlegessé teszik a reakciókomponenseken kívül.

Renderelés előtt

A Next.js minden oldalt előre renderel. Ha előre rendereli, az oldal gyorsan betöltődik a böngészőbe statikus HTML-lel. Később betölti az oldalhoz szükséges JavaScriptet. Javítja az oldal teljesítményét és SEO-ját.

Kétféle előrenderelés van benne. Az egyik a Static Site Generation (SSG), a másik a Server Side Rendering (SSR). Az SSG létrehozza a HTML-kódot az összeállításkor, és ugyanazt más kérésekre is felhasználja.

Az SSR minden kérésnél előállítja a HTML-kódot, így egy kicsit lassabb, mint az SSG. A Next.js az SSG használatát javasolja mindaddig, amíg az SSR használata nem kötelező.

A Next.js előtölti azokat az oldalakat is, amelyek hivatkozásokat tartalmaznak (a hivatkozás komponenssel) az aktuális megtekintési oldalon. Ez a nagyszerű funkció nagyon gyorsan betölti az oldalakat mozgás közben.

útvonalválasztás

A Next.js beépített útválasztó rendszerrel érkezik. Támogatja a címtár alapú útválasztási rendszert. Az útvonal létrehozásához oldalakat kell létrehoznunk egy bizonyos könyvtárban. Ennek eléréséhez egy csomagot kell használnunk.

  10 legjobb saját üzemeltetésű közösségi hálózati szoftver

API-k

Létrehozhatunk API-kat a Next.js-szel, mint például az expressz. Új lehetőséget nyit meg full-stack alkalmazások létrehozására a Next.js segítségével. Lehet, hogy nem olyan hatékony, mint egy dedikált szerveroldali keretrendszer, de elvégzi a feladatot.

Más funkciók

Vannak más funkciók is, mint például a képoptimalizálás, a beépített CSS-támogatás, az egyes oldalak metacímkéi (a jobb SEO érdekében), stb.; az eddig látott összes szolgáltatás a Next.js kiegészítő szolgáltatása a React funkciókon felül.

A Next.js nagy népszerűségre tett szert megjelenése óta. A Next.js tanulása nagyon hasznos, ha ismeri a Reactot. De nem kötelező először megtanulni reagálni. Először bárkivel kezdheted. A JavaScript mindkettőjük számára kötelező.

Eddig a React és a Next.js különböző funkcióit láttuk. Hasonlítsuk össze mindkettőt.

React vs. Next.js

Sok hasonlóság van a React és a Next.js között. Ön már tudja, miért van köztük sok hasonlóság. Alapfogalmaik ugyanazok. Hasonlítsunk össze néhány dolgot ezek közül.

Kód

Lássunk egy egyszerű Hello Worldet! A react és next.js komponense.

Reagál

function App() {
   return (
      <div className="app">
         Hello World!
      </div>
   );
}
export default App;

Next.js

export default function Home() {
  return (
    <div className="app">
      Hello World!
    </div>
  )
}

Ha látja a kódot, nincs különbség köztük.

Mappa szerkezete

A React egy olyan könyvtár, amelynek nincs különösebb mappastruktúrája. A mappákat és fájlokat preferenciánk és használati esetünk alapján rendezhetjük el.

A Next.js-nek szintén nincs szigorú követendő mappastruktúrája. De az oldalak mappán belül csak az útválasztáshoz kell oldalakat létrehoznunk. Ez az egyetlen korlátozás a next.js fájlban. Elrendezhetjük az összes többi mappát és fájlt, mint például a react.

Teljesítmény

A Next.js alkalmazások egy kicsit gyorsabbak a React alkalmazásokhoz képest. A Next.js előmegjelenítési technikákat használ ezek elkészítéséhez. De ez nem azt jelenti, hogy ne tudnánk gyorsítani a React alkalmazásokat. Ugyanezt érhetjük el a React-tal is. Ehhez extra erőfeszítéseket kell tennünk.

Gépelt

A TypeScript fontos szerepet játszik a nagy alkalmazásokban. TypeScript nélkül a legtöbb fejlesztő mérges lesz az alkalmazások hibakeresésére. Ne aggódjon, a React és a Next.js is támogatja a TypeScriptet.

Más funkciók

Mind a React, mind a Next.js-t nagymértékben karbantartják az alkotók. A közösség nagyon nagy mindkettőjük számára, összehasonlítva más front-end könyvtárakkal és keretrendszerekkel. Ha bárhol elakadunk a React és a Next.js alkalmazások fejlesztése közben, nagy eséllyel az interneten találjuk meg a megoldást.

  Miért nem működik az Omegle?

Ezek dokumentációja nagyon jó az induláshoz. Mire várunk? A használat megkezdéséhez lépjen a React és a Next.js dokumentációba.

Összegzés

FeaturesReactNext.jsCode A JavaScript ismerete elegendő a React alkalmazások kódolásához. A kód hasonló a Reacthoz, mivel föléje épült.MappaszerkezetNe írjon elő szigorú irányelveket a mappaszerkezetekre. A mappaszerkezet egy részét szabja meg, amelyet követni kell (oldalak útválasztás).TypeScriptIt támogatja a gépírást.Támogatja a gépírást is.Szerveroldali renderelésNincs beépített támogatása a szerveroldali megjelenítéshez.Beépített támogatása van a szerveroldali megjelenítéshez előzetes lekéréssel (SSG és SSR)PerformanceA egy kicsit lassabb a Next.js-hez képestKicsit gyorsabb a React.Community & Maintenance A Facebook által jól karbantartott, nagy nyílt forráskódú közösség támogatja. A Vercel is remekül karbantartja. Ezenkívül nyílt forráskódú közösségi támogatással is rendelkezik. Dokumentáció és tanulásJól dokumentált, még a kezdők számára is. Bármikor elkezdheti használni, ha ismeri a JavaScriptet.Jó dokumentációja van, és a tanulás gyorsabb lesz, ha ismeri a React fogalmait.React vs. Next.js

Melyiket válasszam?

Nos, erre a kérdésre senki nem tud válaszolni. Különböző dolgoktól függ, mint például a projekt típusa, mit csinál, a célja stb.; ezek összes jellemzőjét és követelményeit végigjárva megállapíthatjuk.

Egy dolog, ami alapján gyorsan következtethetünk, az a SEO. Ha a projektje sok SEO-t igényel, jobb, ha a Next.js-t választja.

Minden forgatókönyvben különböző tényezőket vettünk figyelembe, hogy levonjuk a következtetést. Ha nem tudunk következtetést levonni, akkor jobb, ha a Reactot választjuk. A korai szakaszban pedig mindig válthatunk másikra, mivel a kódmigráció nem tart sok időt. Tudod az okát, hogy miért nem kell sok idő 😄.

Mindkettőnek jó közössége van. Szinte minden olyan problémára talál megoldást, amellyel a React és a Next.js használata során szembesül, mivel ezeket széles körben használják a frontend tartományban. Rengeteg csomagot találsz webalkalmazások készítéséhez. Ugyanazokat a csomagokat használhatjuk a Reactban és a Next.js-ben is.

A döntéseket mindig nehéz meghozni. De ne félj döntéseket hozni 😜.

Következtetés

Azt mondhatjuk, hogy a Next.js a React szuperkészlete. A Next.js több funkcióval és az azt használó React funkciókkal együtt jön létre. Összehasonlításuk tehát nem ideális. Ennek ellenére megtettük 😅. Mindenesetre most van egy felső szintű ötlete a React és a Next.js esetében.

Mint látható, nincs sok különbség köztük, kivéve a Next.js extra funkcióit, ami nyilvánvaló. Mára ennyi. Zárjuk be ezt egy kis javaslattal.

Javasoljuk, hogy először kezdje el a React-tal, ha egy front-end keretrendszert szeretne megtanulni. A React koncepciók révén a Next.js tanulása a torta egy darabja lesz.

Felfedezhet néhány legjobb forrást a ReactJS megtanulásához.