Русский
Открыть в Telegram

ПостКак работает React Island

3 декабря 2024
З
Заметки про React
Ссылка
нажмите — покажем
Как работает React Island React Island – это подход внедрения React компонентов и даже целых приложений в статическую HTML страницу. Этот подход можно использовать для постепенного рефакторинга статического сайта или, если вы хотите добавить небольшую интерактивную часть на сайт, оставить все остальное как есть статическим. Как это работает: 1) Рендерите HTML любым способом 2) Добавляете корневой div в HTML для React 3) Вызываете функцию 4) Рендерите небольшое React приложение в добавленный div элемент React Island подойдет если у вас есть сайт, который рендерится статически через шаблонизатор. Автор предлагает не переписывать все сразу на React, т.к. на это может уйти много времени, а вместо этого делать постепенный рефакторинг. Либо оставить все как есть и добавлять небольшую интерактивность частями. Для реализации подхода надо создать React компоненты и объявить в window поле для вызова функции рендера: const ReactIslands = { amazingNewFeature: function amazingNewFeature( element: HTMLDivElement, props: AmazingNewFeatureProps ) { createRoot(element).render( <App> <AmazingNewFeature {...props} /> </App> ); }, }; window.ReactIslands = ReactIslands; Через Vite нужно собрать файл reactIslands.js и добавить код в файл шаблонизатора рендера HTML страницы: <script type="module" src="{{ url_for('static', filename='reactIslands.js') }}" ></script> <script> $(document).ready(function () { window.ReactIslands.amazingNewFeature( document.getElementById('amazing-new-feature'), { prop1: {{ value_from_server | tojson }}, prop2: {{ value_from_server | tojson }}, }) }) </script> <div id="amazing-new-feature"></div> Как видите из примера выше, здесь используется jQuery и шаблонизатор Jinja. Начальные пропсы в React передаются с помощью шаблонизатора. https://swizec.com/blog/the-anatomy-of-a-react-island/
32 · 3.2K ·

Рядом в ленте

ЗЗаметки про ReactРелиз React Router v7 Вышел релиз React Router v7. В новой версии можно использовать React Router в двух вариантах: как полноценный фулстек фреймворк (типа RemiЗЗаметки про ReactРелиз Vite 6 Вышел релиз Vite 6 – самое значительное обновление после Vite 2. В новой версии появилось экспериментальное Environment API. Это новое API в основн
это сообщение
ЗЗаметки про ReactРелиз React 19 Вышла стабильная версия React 19. Что появилось нового: ⭐️ Actions В React одним из основных кейсов использования является выполнение мутаций и оЗЗаметки про ReactBiome – быстрый форматтер и линтер Biome – тулчейн для фронтенда, который умеет форматировать как Prettier, но в 35 раз быстрее. Кроме форматирования, есть прои
ЗЗаметки про ReactЗаметки про React@ru_react_notes · канал · Технологии
3 412подписчиков491постов в индексе
Лента площадки Открыть в Telegram

Открытая публичная лента из поискового индекса ChatCrawler — «Google по публичному Telegram»; обновляется по мере обхода площадки. Время — UTC.

Только публичный контент, официальный API Telegram. О проекте · Вопросы · Границы индекса · Убрать страницу из выдачи · Каталог · Поиск · Как мы считаем