В този учебник ще научиш как да добавиш React към своя Astro App. Това ти позволява да създадеш и интегрираш съвременни React компоненти в приложението си. Ще преминем през необходимите стъпки, за да подготвим твоята Astro-App за React и да създадем прост компонент.

Най-важни изводи

  • Трябва да инсталираш пакета на React и съответните добавки.
  • Структурата на компонентите в Astro е различна от чистия HTML.
  • За увереност, че твоите React компоненти ще бъдат изобразени в браузъра, трябва да използвате атрибута client:only.

По стъпково ръководство

За да добавиш React към твоята Astro App, следвайте тези стъпки:

Първо трябва да се увериш, че твоят развойният сървър не работи. Можеш да направиш това, като спреш командата npm run dev. Това е важно, за да гарантираш, че няма конфликти по време на инсталирането на новите зависимости.

Интегриране на React в твоето Astro приложение

Сега си готов да интегрираш официално React. За целта използвай командата npx astro add react. С тази команда добавяш необходимите пакети за подкрепа на React в твоята Astro-App.

След това ще те попитат дали искаш да инсталираш новите зависимости с npm. Увери се, че потвърждаваш това, тъй като инсталацията няма да работи правилно без тези зависимости.

Интеграция на React в твоето приложение Astro

При инсталирането се правят промени и в astro.config.mjs файлът. Трябва да приемеш и тези промени, за да работи всичко гладко.

След като инсталацията завърши, приложението ти вече трябва да разполага с поддръжка на React. Да видим какви нови зависимости бяха добавени. В package.json файла сега ще намериш react, react-dom, както и @astrojs/react като добавки.

Интеграция на React в твоето Astro приложение

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

Интеграция на React във вашия Astro-приложение

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

Интеграция на React в приложението си Astro

След това трябва да се увериш, че компонентът е импортиран в index.astro файлът. Това става между трите тирета (---) в горната част на файла, където можеш да включиш инструкции за импортиране.

Интеграция на React във вашия Astro-приложение

Твоята инструкция за импортиране може да изглежда като: import App from '../components/index.jsx';. Това гарантира, че компонентът ти се зарежда правилно.

Интеграция на React във твоето Astro приложение

Първоначално трябва да се увериш, че имаш нещо за експортиране, за да файлът да не остане празен. Добави проста функция, която да изобрази нещо в DOM-а.

Запомни да поставиш атрибута client:only за компонента си. Това гарантира, че компонентът се рендира в браузъра, а не на сървъра.

Интеграция на React в твоето Astro приложение

Сега отиди в index.jsx файла и създай прост React компонент. Например, можеш да добавиш прост div с текста „App“ в HTML-а.

Интеграция на React в твоето Astro приложение

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

Интеграция на React в приложението си за Asto

Когато погледнеш DOM-a, ще забележиш, че Astro използва специален плейсхолдер на име "Astro Island", където се рендерират твоите React компоненти.

Интеграция на React в твоето Astro приложение

Astro позволява едновременното използване на няколко фронтенд библиотеки. Това означава, че можеш да комбинираш React, Vue или други библиотеки в едно приложение, без да възникват компликации.

Интеграция на React в приложението си за Астро

Работата на твоите компоненти е вече добър стъпка и сега можеш да работиш за тяхното разширяване. В бъдещи уроци ще развием компонентата в чат приложение.

Интеграция на React във вашия Astro-приложение

Обобщение

В този урок научихте как да добавите React към вашия Astro-App и да създадете прост компонент. Това отваря вратата към множество възможности за разширяване на вашия проект.

Често задавани въпроси

Как да инсталирам React в моята Astro-App?Можете да добавите React към вашия Astro-App, използвайки командата npx astro add react.

Защо е важно да използваме client:only?Атрибутът client:only гарантира, че твоя компонент се рендерира в браузъра и не на сървъра.

Мога ли да използвам няколко фронтенд библиотеки в едно Astro-App?Да, Astro позволява използването на няколко фронтенд библиотеки като React, Vue и други едновременно.