TGViewer
Channel Public Channel
React

React

@react_lib

Подборки по React js и все что с ним связано. По всем вопросам @evgenycarter
Subscribers
2.66K
Photos
327
Videos
138
Links
412

Showing posts older than #53 · Back to latest

Older Posts 12 shown
Post #51 900
Как работает React: подробное руководство

В этой статье я покажу вам, с чего начинается React.

Что это означает? Это означает, что мы разработаем мини-версию React, которая сможет выполнять следующий код...

✍️ @React_lib
  • 👍 4
  • 🔥 1
Post #48 3.49K
useId для генерации уникальных ID

В React 18 появится новый хук для генерации уникальных id. Этот хук можно использовать для связки названия и инпута:

function Checkbox() {
const id = useId();
return (
<>
<label htmlFor={id}>Do you like React?</label>
<input type="checkbox" name="react" id={id} />
</>
);
);


Проблема, которую решает хук useId, связана с новым подходом серверного рендеринга в React. Раньше для генерации уникальных id использовался простой счетчик. В новой версии React, при использовании конкурентного рендеринга, HTML может передаваться в произвольном порядке.

Для генерации уникальных id в хуке useId используется текущая позиция компонента в дереве приложения. Внутри React, id представляет из себя двоичное число. Для дочерних элементов добавляются дополнительные биты слева от последовательности родителя, которые представляет положение дочернего элемента на текущем уровне дочерних элементов.


00101 00010001011010101
╰──┬──╯ ╰────────┬────────╯
Fork 5 of 20 id родителя


Это позволяет быть уверенным, что каждый вызов useId будет возвращать уникальный id. Если в компоненте несколько лейблов и инпутов, то можно добавить локальные префиксы, что гарантирует уникальность id глобально:

function NameFields() {
const id = useId();
return (
<div>
<label htmlFor={id + '-firstName'}>First Name</label>
<div>
<input id={id + '-firstName'} type="text" />
</div>
<label htmlFor={id + '-lastName'}>Last Name</label>
<div>
<input id={id + '-lastName'} type="text" />
</div>
</div>
);
}

Хотя так делать не обязательно, если несколько раз вызвать useId в одном компоненте, то каждый из них вернёт свой уникальный id.


https://github.com/reactwg/react-18/discussions/111

✍️ @React_lib
GitHub Intent to Ship: useId · reactwg/react-18 · Discussion #111 This feature is now available in the latest alphas facebook/react#22644 useId is an API for generating unique IDs on both the client and server, while avoiding hydration mismatches. We haven't ...
  • 👍 4
  • 🔥 1
Post #47 849
Антипаттерны React, которых следует избегать

Вот некоторые из антипаттернов, наиболее часто встречающихся в приложениях React, и способы их устранения. Эти антипаттерны превратят ваш исходный код в кошмар для работы, если вы не научитесь распознавать и предотвращать их на ранних стадиях.

✍️ @React_lib
  • 👍 5
Post #46 893
⚛️ 🚀react-static – фреймворк для создания статических сайтов


react-static – простой в настройке генератор статических сайтов на React. Можно выделить следующие преимущества фреймворка:

- Независимость от данных. Все данные, необходимые для рендеринга сайта, заранее собираются в конфиг-файле. Источник данных может быть любой, хоть GraphQL или REST API. В компонентах доступ к данным происходит через хук или пропсы.

- Поддержка SPA. При загрузке статической страницы сайта загружается минимальный бандл для React. Помимо JS бандла загружаются остальные статические страницы и данные, а потом помещаются в кэш браузера. Благодаря такому подходу дальнейшие переходы по ссылкам будут происходить мгновенно, без перезагрузки страницы.

https://github.com/react-static/react-static

✍️ @React_lib
  • 👍 1
Post #45 933
Учимся верстать на React за 5 минут

Эта статья для тех, кто уже знает CSS/HTML, немного JavaScript, хочет попробовать свои силы в React, но не знает, с чего начать. А начать можно как раз с верстки.

✍️ @React_lib
  • 👍 3
  • ❤ 1
Post #44 987
Post #42 3.88K
Найди ошибку в React-компоненте: Функциональное Карри

В этом выпуске «Найди ошибку» у нас есть простой React компонент-переключатель, который переключается между активным и неактивным состояниями при нажатии. Однако он не работает как ожидается. Найдите ошибку.

✍️ @React_lib
  • 👍 6
Post #33 4.57K
React JS сайт с нуля

- установка и настройка React и Bootstrap
- Адаптивное меню с bootstrap
- Роутинг сайта, переход по страницам
- делаем слайдер Bootstrap
- верстка табы адаптивно
- форма обратной связи
- верстка компоненты Bootstrap
- верстка сайта блог посты
- как загрузить сайт React JS на хостинг

✍️ @React_lib
  • 👍 3
Older posts →
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →