У цьому навчальному посібнику ви навчитеся, як додати React до своєї програми Astro App. Це дозволить вам створювати сучасні React-компоненти та інтегрувати їх у ваш додаток. Ми пройдемо необхідні кроки для підготовки вашої Astro-програми до React та створення простої компоненти.

Головні висновки

  • Вам потрібно встановити пакет React та відповідні плагіни.
  • Структура ваших компонентів в Astro трохи відрізняється від чистого HTML.
  • Щоб гарантувати відображення ваших компонентів React у браузері, вам потрібно використати атрибут client:only.

Інструкція крок за кроком

Для додання React до вашої Astro-програми виконайте такі дії:

Спочатку переконайтеся, що ваш сервер розробки не працює. Це можна зробити, скасувавши команду npm run dev. Це важливо для того, щоб уникнути конфліктів під час встановлення нових залежностей.

Інтеграція React у ваш застосунок Astro

Тепер ви готові офіційно інтегрувати React. Для цього використовуйте команду npx astro add react. Ця команда додає необхідні пакети для підтримки React у вашій Astro-програмі.

Після цього вас запитають, чи хочете ви встановити нові залежності за допомогою 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. Це забезпечить відображення компоненти в браузері, а не на сервері.

Інтеграція React у ваш додаток Astro

Тепер ми переходимо до файлу index.jsx і створюємо просту компоненту React. Наприклад, ви можете вставити простий div з текстом "App" в HTML.

Інтеграція React у твою Astro-додаток

Якщо ви зараз запустите програму, ви повинні побачити, що нова компонента успішно завантажена та працює належним чином.

Інтеграція React у вашому додатку Astro

Якщо ви придивитесь до DOM, ви помітите, що Astro використовує спеціальний заповнювач під назвою "Astro Island", де відбувається рендеринг ваших компонент React.

Інтеграція React у твою Astro-застосунок

Astro дозволяє використовувати одночасно кілька фронтенд-бібліотек. Це означає, що ви можете комбінувати React, Vue або інші бібліотеки в одному додатку, без будь-яких ускладнень.

Інтеграція React у вашу Astro-додаток

Робота вашого компонента вже є хорошим кроком, і ви можете працювати над подальшим розширенням вашого додатку. У майбутніх посібниках ми розглянемо розвиток компонента до чат-додатку.

Інтеграція React до твоєї Astro-аплікації

Підсумок

У цьому посібнику ви дізналися, як додати React до своєї Astro-App та створити простий компонент. Це відкриває шлях до безлічі можливостей для розвитку вашого додатку.

Часто задавані питання

Як встановити React у своєму Astro-App?Ви можете додати React до своєї Astro-App за допомогою команди npx astro add react.

Чому важливо використовувати client:only?Атрибут client:only забезпечує рендеринг вашого компонента у браузері, а не на сервері.

Чи можна використовувати декілька фронтенд-бібліотек у Astro-App?Так, Astro дозволяє одночасно використовувати різні фронтенд-бібліотеки, такі як React, Vue та інші.