Читатели като вас помагат в подкрепа на MUO. Когато правите покупка чрез връзки на нашия сайт, ние може да спечелим комисионна за партньор. Прочетете още.

Изображенията са важна част от всеки уебсайт или приложение. Те помагат да се направи съдържанието по-ангажиращо и визуално привлекателно.

Въпреки това, ако изображенията не са правилно оптимизирани, те също могат да забавят сайт или приложение.

Защо да оптимизирате изображения?

Има няколко причини, поради които е важно да оптимизирате изображенията.

  • Може да помогне за подобряване на времето за зареждане на сайта или приложението.
  • Може да намали количеството данни, които клиентът трябва да изтегли, което може да спести разходи за честотна лента.
  • Може да помогне за подобряване на цялостната производителност на сайта или приложението.

Как да оптимизирате изображения в Next.js

Има няколко начина, по които можете да оптимизирате изображения в Next.js. Единият е да използвате компонента Image. Този компонент автоматично оптимизира изображенията за ефективност.

instagram viewer

Друг начин за оптимизиране на изображения е използването на вградени възможности за обработка на изображения. Next.js може автоматично да преоразмерява, компресира и оптимизира изображения за производителност.

И накрая, можете да използвате библиотека на трета страна като react-optimized-image. Тази библиотека предоставя различни възможности за оптимизиране на изображения.

Използване на компонента на изображението

Компонентът Image е най-лесният начин за оптимизиране на изображения в Next.js. За да го използвате, просто импортирайте компонента от следващ/изображение пакет.

След като импортирате компонента, можете да го използвате като всеки друг в React. Компонентът Image има няколко подпори, които можете да използвате, за да контролирате начина, по който изобразява изображения.

импортиране Изображение от 'следващо/изображение'

износпо подразбиранефункцияMyImage() {
връщане (
<Изображение
src="/my-image.jpg"
ширина="200"
височина="200"
качество="100"
alt="Моят образ"
/>
)
}

В този пример компонентът Image изобразява изображение с ширина 200px и височина 200px. Можете също да използвате CSS или рамка като Tailwind за стилизиране на вашето приложение и изображения.

Някои от необходимите подпори за компонента Image са ширина, височина, src и alt. Src prop е URL адресът на изображението, което искате да използвате. Използвайте подпорите за ширина и височина, за да зададете ширината и височината на изображението в пиксели. Alt prop е алтернативният текст за изображението.

Някои незадължителни подпори за компонента Изображение са оформление, зареждащо средство, заместител и приоритет. Реквизитът на оформлението определя оформлението на изображението. Можете да използвате подложката за зареждане, за да зададете потребителско зареждане на изображения. Реквизитът на контейнер за място указва потребителски контейнер за изображение. Опцията за приоритет определя приоритета на изображението.

Някои от предимствата на използването на компонента Image са:

  • Подобрена производителност: Едно от основните предимства на използването на компонента Image е подобрената производителност. Компонентът автоматично оптимизира изображенията за производителност.
  • Автоматично преоразмеряване на изображението: Друго предимство от използването на компонента Изображение е автоматичното преоразмеряване на изображението. Компонентът може автоматично да преоразмерява изображения, за да пасне на подпорите за ширина и височина.
  • Автоматична компресия на изображението: Компонентът Image може също автоматично да компресира изображения, за да намали размера на файла.
  • Поддръжка на мързеливо зареждане: Компонентът Image също поддържа отложено зареждане. Това означава, че ще зарежда изображения само когато са видими на екрана.

Използване на библиотека на трета страна

Ако имате нужда от повече контрол върху оптимизирането на изображението, можете да използвате библиотека на трета страна като реакция-оптимизирано-изображение. Тази библиотека предоставя различни възможности за оптимизиране на изображения.

Някои от функциите на react-optimized-image включват:

  • Оптимизиране на изображения на клиента и сървъра: react-optimized-image може да оптимизира изображения на клиента и сървъра. Това означава, че изображенията са оптимизирани за производителност, както и за размера на файла.
  • Автоматично преоразмеряване на изображението: react-optimized-image може автоматично да преоразмерява изображенията, за да пасне на подпорите за ширина и височина.
  • Автоматична компресия на изображението: react-optimized-image може също автоматично да компресира изображения, за да намали размера на файла.
  • Поддръжка на мързеливо зареждане: react-optimized-image също поддържа отложено зареждане. Това означава, че ще зарежда изображения само когато са видими на екрана.
  • Поддръжка на множество формати на изображения: react-optimized-image поддържа множество формати на изображения, включително JPEG, PNG и WebP.

За да използвате react-optimized-image, просто инсталирайте библиотеката с npm.

След като инсталирате библиотеката, можете да я импортирате във вашия проект.

импортиране Img от 'react-optimized-image'

износпо подразбиранефункцияNextImg() {
връщане (
<Img
src="/my-image.jpg"
размери={[400, 800]}
alt="Моят образ"
/>
)
}

Можете също да използвате SVG файлове с оптимизирано за реакция изображение.

импортиране {Svg} от 'react-optimized-image'

износпо подразбиранефункцияNextImg() {
връщане (
<Svg
src="/my-image.svg"
className=запълнено-червено
/>
)
}

Този пример използва подложката className за указване на име на клас за SVG. Можете да използвате това име на клас, за да стилизирате SVG с CSS или да взаимодействате с него с помощта на JavaScript.

react-optimized-image предоставя и няколко други предимства пред вградените възможности за оптимизиране на изображения.

Едно предимство от използването на пакет пред вградените функции е, че той може автоматично да генерира различни размери изображения. Това означава, че не е нужно да създавате различни версии на едно и също изображение.

Друго предимство е, че може автоматично да показва подходящ размер на изображението за устройството на потребителя. Това означава, че устройствата с екрани с висока разделителна способност ще получат изображение с висока разделителна способност, а устройствата с екрани с ниска разделителна способност ще получат изображение с ниска разделителна способност.

И накрая, react-optimized-image е напълно проект с отворен код. Това означава, че можете да допринесете за библиотеката, ако имате нужда от конкретна функция или корекция на грешка.

Кой метод трябва да използвате?

И така, кой метод трябва да използвате за оптимизиране на изображения в Next.js?

Ако имате нужда от основна оптимизация на изображението, тогава можете да използвате вградените възможности за обработка на изображения. Това е най-лесният начин да започнете с оптимизирането на изображението.

Ако имате нужда от повече контрол върху оптимизирането на изображението, тогава можете да използвате библиотека на трета страна като react-optimized-image. Тази библиотека предоставя по-разширени възможности за оптимизиране на изображения.

Ако се нуждаете от най-добрата производителност, тогава можете да използвате комбинация от вградените възможности за обработка на изображения и библиотека на трета страна. Това ще ви даде най-доброто от двата свята. Този подход обаче не се препоръчва за начинаещи, тъй като изисква повече настройка.

Подобрете SEO с оптимизирани изображения

Чрез оптимизиране на изображенията на вашия уебсайт или приложение можете да подобрите своето SEO. Алгоритъмът на Google взема предвид скоростта на зареждане на уебсайтове и приложения. Ако уебсайтът или приложението ви се зареждат бавно, това ще се отрази негативно на вашето SEO.

С оптимизирани изображения можете да подобрите времето за зареждане на вашия уебсайт или приложение, което може да подобри вашето SEO. След това можете също да добавите отворен графичен протокол за още по-добра производителност.