TGViewer
React JS React JS @react_tg · 16.2K subscribers
Post #403 6.14K
⚛ Создание UI-компонентов React на продвинутом уровне

React — хорошая библиотека. Так давайте сделаем ее еще лучше, создавая многоразовые компоненты на высокопрофессиональном уровне.

Для использования этого руководства достаточно базовых знаний о React, TypeScript и Tailwind CSS.

В качестве примера поработаем с button, но принципы, которым будем следовать здесь, применимы к любому HTML-тегу.

const Button = ({children, className}) => {
return (
<button className={className}>{children}</button>
)
}


Приведенный выше код работает, но что, если понадобится ввести ARIA (accessible rich internet application attribute — доступные полнофункциональные интернет-приложения), ссылки или любые другие свойства обычного тега button?

Можно просто добавить больше свойств и на этом закончить.

const Button = ({children, className, ref, type}) => {
return (
<button className={className} ref={ref} type={type}>{children}</button>
)
}


Это одно из решений, но оно не эффективно. Чтобы сделать его более действенным, поработаем с TypeScript и React. Быстро создать проект с использованием React и TypeScript поможет документация Vite.

Первым шагом будет импорт необходимых типов из React и создание интерфейса для свойств кнопки (button).

📌 Продолжение

@react_tg
  • 👍 16
  • 🔥 3
  • ❤‍🔥 2
More from @react_tg
  1. Oct 2, 2026🔥 Claude Code теперь можно менять изнутри Anthropic представила Mods: небольшие функции н…
  2. Oct 1, 2026Всплывающие скроллеры изображений с анимацией, управляемой прокруткой CSS 🤙 .pop { view-t…
  3. Oct 1, 2026👨‍💻 Фронтенд с AI: что можно делегировать агентам 5 октября, стартует конференция Podlod…
  4. Oct 1, 2026Совет по JavaScript💡 Легко и правильно отображайте цены.
  5. Sep 29, 2026🌦️ Красивый пример того, как может выглядеть современное приложение на Aspire Команда пок…
  6. Sep 24, 2026Temperature displays Индикаторы - это svg-картинки, параметры которых задаются в JS. https…
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 →