Все, что я хотел бы знать перед переносом 50 000 строк кода на React Server Components
Серверных компонентов React очень много. Недавно мы переосмыслили нашу документацию и сделали ребрендинг Mux, а пока мы этим занимались, перенесли все сайты mux.com и docs.mux.com на серверные компоненты. Так что... поверьте мне. Я знаю. Я также знаю, что это возможно, не так страшно и, возможно, стоит того.
https://www.mux.com/blog/what-are-react-server-components
✍️ @React_lib
Серверных компонентов React очень много. Недавно мы переосмыслили нашу документацию и сделали ребрендинг Mux, а пока мы этим занимались, перенесли все сайты mux.com и docs.mux.com на серверные компоненты. Так что... поверьте мне. Я знаю. Я также знаю, что это возможно, не так страшно и, возможно, стоит того.
import { Suspense } from 'react'
async function VideoSidebar({ videoId }) {
return (
<Suspense fallback={<p>loading comments...</p>}>
<Comments videoId={videoId} />
</Suspense>
<Suspense fallback={<p>loading related videos...</p>}>
<RelatedVideos videoId={videoId} />
</Suspense>
)
}
https://www.mux.com/blog/what-are-react-server-components
✍️ @React_lib
👍1
Шаблоны проектирования React
Разрабатывая приложения на React, вы наверняка сталкивались с различными сценариями использования, которые нелегко решить с помощью старого подхода.
Для каждого случая требуется свой паттерн, позволяющий решить проблему наиболее оптимальным способом, а также сделать наш код более масштабируемым.
React предоставляет различные паттерны проектирования для решения общих проблем. Список часто используемых паттернов проектирования в React таков:
Presentational & Container Component
Higher Order Components
Render Props
Compound Components
Hooks
https://dev.to/anuradha9712/react-design-patterns-2acc
✍️ @React_lib
Разрабатывая приложения на React, вы наверняка сталкивались с различными сценариями использования, которые нелегко решить с помощью старого подхода.
Для каждого случая требуется свой паттерн, позволяющий решить проблему наиболее оптимальным способом, а также сделать наш код более масштабируемым.
React предоставляет различные паттерны проектирования для решения общих проблем. Список часто используемых паттернов проектирования в React таков:
Presentational & Container Component
Higher Order Components
Render Props
Compound Components
Hooks
https://dev.to/anuradha9712/react-design-patterns-2acc
✍️ @React_lib
👍3
This media is not supported in your browser
VIEW IN TELEGRAM
⚛️ Совет по React
Отложите создание non-primitive значений, если вы используете их в массиве зависимостей
✍️ @React_lib
Отложите создание non-primitive значений, если вы используете их в массиве зависимостей
✍️ @React_lib
👍3
This media is not supported in your browser
VIEW IN TELEGRAM
⚛️ Когда разделять JSX на новые компоненты? Когда создавать пользовательские хуки? Как абстрагировать уровень данных от представления?
✍️ @React_lib
✍️ @React_lib
👍4
Как React 18 повышает производительность приложений
В React 18 появились функции одновременной работы, которые кардинально меняют способ визуализации приложений React. Мы рассмотрим, как эти последние возможности влияют на производительность приложения и улучшают ее.
Сначала сделаем небольшой шаг назад, чтобы понять основы длительных задач и соответствующих измерений производительности.
https://vercel.com/blog/how-react-18-improves-application-performance
✍️ @React_lib
В React 18 появились функции одновременной работы, которые кардинально меняют способ визуализации приложений React. Мы рассмотрим, как эти последние возможности влияют на производительность приложения и улучшают ее.
Сначала сделаем небольшой шаг назад, чтобы понять основы длительных задач и соответствующих измерений производительности.
https://vercel.com/blog/how-react-18-improves-application-performance
✍️ @React_lib
👍2
This media is not supported in your browser
VIEW IN TELEGRAM
❌ Избегайте использования useState() для сложного управления состояниями в React
✅ Вместо этого используйте useReducer
✍️ @React_lib
✅ Вместо этого используйте useReducer
✍️ @React_lib
👍3
Совет
Проблема: Если в приложении React используются providers, то может потребоваться повторить их конфигурацию в нескольких местах:
1. The app's root
2. Storybook
3. Tests
Решение: Создадим компонент AppProviders. Тогда мы сможем использовать его в нескольких местах.
✍️ @React_lib
Проблема: Если в приложении React используются providers, то может потребоваться повторить их конфигурацию в нескольких местах:
1. The app's root
2. Storybook
3. Tests
Решение: Создадим компонент AppProviders. Тогда мы сможем использовать его в нескольких местах.
✍️ @React_lib
👍4
React 18 Design Patterns and Best Practices.pdf
11 MB
React 18 Design Patterns and Best Practices: Design, build, and deploy production-ready web applications with ease and create powerful user experiences, 4th Edition
Автор: Carlos Santana Roldan (2023)
Книга состоит из трех частей: в первой вы узнаете об основах паттернов React, во второй погрузитесь во внутреннюю работу React, а в третьей сосредоточитесь на практическом применении. Все примеры кода обновлены в соответствии с последней версией React, а также добавлены новые возможности React 18 и Node 18, архитектура MonoRepo и обширная глава по TypeScript.
✍️ @React_lib
Автор: Carlos Santana Roldan (2023)
Книга состоит из трех частей: в первой вы узнаете об основах паттернов React, во второй погрузитесь во внутреннюю работу React, а в третьей сосредоточитесь на практическом применении. Все примеры кода обновлены в соответствии с последней версией React, а также добавлены новые возможности React 18 и Node 18, архитектура MonoRepo и обширная глава по TypeScript.
✍️ @React_lib
👍2
Понимание компонентов React Server
Изучите основы React Server Components, чтобы лучше понять, зачем (и когда) их внедрять.
https://vercel.com/blog/understanding-react-server-components
✍️ @React_lib
Изучите основы React Server Components, чтобы лучше понять, зачем (и когда) их внедрять.
https://vercel.com/blog/understanding-react-server-components
✍️ @React_lib
👍5
Частично управляемые компоненты: Декларативный паттерн проектирования в React
В React принято различать Controlled и Uncontrolled компоненты. Но реальный мир не такой уж черно-белый...
Вкратце:
Uncontrolled компоненты управляют изменениями внутри себя, внутренне.
Controlled компоненты управляют своими изменениями извне, изнутри.
Недавно я стал автором React-компонента с древовидным представлением под названием react-arborist. После работы над таким сложным компонентом я почувствовал отсутствие необходимой концепции в нашем React-сообществе.
https://www.jameskerr.blog/posts/partially-controlled-react-components/
✍️ @React_lib
В React принято различать Controlled и Uncontrolled компоненты. Но реальный мир не такой уж черно-белый...
Вкратце:
Uncontrolled компоненты управляют изменениями внутри себя, внутренне.
Controlled компоненты управляют своими изменениями извне, изнутри.
Недавно я стал автором React-компонента с древовидным представлением под названием react-arborist. После работы над таким сложным компонентом я почувствовал отсутствие необходимой концепции в нашем React-сообществе.
https://www.jameskerr.blog/posts/partially-controlled-react-components/
✍️ @React_lib
👍3
Использование спрайтовых иконок svg в React
Существует множество способов использовать svg-иконки в приложениях React. Самый интуитивный, но и самый худший - это писать код svg непосредственно в компоненте в виде JSX.
Я не буду вдаваться во все причины, так как другие люди уже проделали большую работу по объяснению этого, но в целом это неэффективно и значительно увеличивает размер вашего пакета.
https://www.jacobparis.com/content/svg-icons
✍️ @React_lib
Существует множество способов использовать svg-иконки в приложениях React. Самый интуитивный, но и самый худший - это писать код svg непосредственно в компоненте в виде JSX.
Я не буду вдаваться во все причины, так как другие люди уже проделали большую работу по объяснению этого, но в целом это неэффективно и значительно увеличивает размер вашего пакета.
https://www.jacobparis.com/content/svg-icons
✍️ @React_lib
👍3
Все хуки и концепты React в одной статье
В первую очередь React это JS библиотека, а не полноценный фреймворк, так что для создания полноценного веб приложения тебе нужно знать много дополнительных вещей, чтобы использовать их вместе с React. В этой статье пойдет речь о React концептах, хуках и, конечно 😊 , хороших практиках.
Мы используем React для создания переиспользуемых компонентов, которые могут логично использоваться для создания UI. Создание компонентов в React также просто, как и создание функций 🤩 .
Для примера 👇🏻, ниже показан простой react компонент, в который мы отправляем данные как аргумент, который можно легко указать внутри функции.
https://habr.com/ru/articles/660573/
original https://dev.to/nyctonio/all-react-hooks-and-concepts-in-a-single-post-1daf
✍️ @React_lib
В первую очередь React это JS библиотека, а не полноценный фреймворк, так что для создания полноценного веб приложения тебе нужно знать много дополнительных вещей, чтобы использовать их вместе с React. В этой статье пойдет речь о React концептах, хуках и, конечно 😊 , хороших практиках.
Мы используем React для создания переиспользуемых компонентов, которые могут логично использоваться для создания UI. Создание компонентов в React также просто, как и создание функций 🤩 .
Для примера 👇🏻, ниже показан простой react компонент, в который мы отправляем данные как аргумент, который можно легко указать внутри функции.
function Component(props){
return <h1>{props.text}</h1>
}
https://habr.com/ru/articles/660573/
original https://dev.to/nyctonio/all-react-hooks-and-concepts-in-a-single-post-1daf
✍️ @React_lib
👍3