Vercel, компанията зад популярната рамка на React Next.js, пусна най-новата версия на рамката на 25 октомври 2022 г. Тази нова версия, Next.js 13, включва актуализации и подобрения на функции като оформление, извличане на данни и маршрутизиране , както и по-бърз пакет. Тези промени имат за цел да улеснят разработчиците да създават бързи, мащабируеми и надеждни уеб приложения с помощта на React.
Една нова функция в Next.js 13 е въвеждането на сегменти от маршрути, което позволява на разработчиците да създават вложени маршрути чрез поставяне на страници в папки в директорията на приложението. Когато създават маршрути в тези папки, разработчиците могат да използват page.jsx вместо index.jsx.
В предишните версии на Next.js от разработчиците се изискваше да създадат папка за оформление, за да споделят потребителски интерфейс между множество страници. С пускането на Next.js 13 обаче това вече не е необходимо, тъй като оформлението вече е включено по подразбиране при създаване на нов проект. Оформлението в Next.js 13 е интерактивно и не се нуждае от повторно изобразяване, което улеснява работата на разработчиците.
В допълнение към включването на оформлението по подразбиране, Next.js 13 въвежда и опростявания на API за извличане на данни. Старите API getServerSideProps, getStaticProps и getInitialProps вече не се поддържат и са заменени с нов API, който е проектиран да бъде по-лесен за използване .
Подобно на „getServerSideProps“
Когато заявката за изпращане използва getServerSideProps., трябва да се кешира „no-store“.
fetch(URL, { cache: 'no-store' });
Подобно на ‘getStaticProps’
Когато заявката за изпращане използва getServerSideProps, трябва да се кешира „force-cache“.
fetch(URL, { cache: 'force-cache' });
Подобно на „getStaticProps с опция за повторно валидиране“
Когато се кешира с живот от секунди
fetch(URL, { next: { revalidate: 30 } });
Турбопакет (алфа)
Turbopack е по-бърз пакет в сравнение с Webpack, Vite. Освен това Turbopack използва интелигентни техники за кеширане, за да подобри обработката на промените в източника по оптимизиран начин. Turbopack притежава модел на промените, които вече са изградени, и изгражда само тези въз основа на текущи промени. Можете да изпробвате Turbopack, ако стартирате „next dev — — turbo’.
Turbopack води до:
700 пъти по-бързи актуализации от Webpack
10 пъти по-бързи актуализации от Vite
4 пъти по-бърз студен старт от Webpack
„използване на клиент“
Компонентите могат автоматично да бъдат рендирани като сървърни компоненти и ако искаме да използваме клиентски куки ‘useState’ и ‘useEffect’, е необходимо да напишем ‘use client’ в началото на файла.
'use client'; import { useState } from 'react'; export default function Navbar() { const [title, setTitle] = useState('React'); return ( <div> <p>{title}</p> </div> ); }
следваща/връзка
В предишните версии на Next.js, ‹a› трябваше да бъде вложено в ‹Link›, за да изобрази правилно връзка. Въпреки това, с пускането на Next.js 13,‹Link› сега винаги изобразява ‹a› по подразбиране.
import Link from 'next/link' // Next.js 12: <Link href="/checkout"> <a>About</a> </Link> // Next.js 13 <Link href="/checkout"> About </Link>
следващо/изображение
В предишните версии на Next.js се изискваше да се посочи атрибутът „alt“ за изображението, за да се избегне грешка. Въпреки това, с пускането на Next.js 13, вече нямате нужда от атрибута „alt“.
import Image from 'next/image'; import logo from './logo.png'; function Navbar() { return <Image alt="logo" src={logo} />; }
@следващ/шрифт
Според новата система за шрифтове Next.js 13 можете да оптимизирате персонализираните си шрифтове и също така да използвате шрифтове на Google без никаква заявка от браузъра. Единственото нещо, което трябва да направите, е да инсталирате пакета @next/font. Можете да го използвате така:
import { Inter } from '@next/font/google'; const inter = Inter();
ресурси:
Благодарим Ви, Ще се видим в следващата статия!!
Можете да се свържете с мен тук,
LinkedIn:https://www.linkedin.com/in/cerensolpan/
GitHub:https://github.com/cerensolpan
Twitter: https://twitter.com/cerensolpanture