React Suspense в трех различных архитектурах
React Suspense прошел странный путь: в течение многих лет он практически не использовался и считался малопригодным, просто причудливым способом отображения состояния загрузки.
Однако с выходом
К сожалению, эти преимущества могут варьироваться от неинтересных до эзотерических и существенно зависят от архитектуры вашего приложения.
Давайте рассмотрим три наиболее распространенные на сегодняшний день архитектуры рендеринга и то, какую роль в них может сыграть
📌 Статья
@react_tg
React Suspense прошел странный путь: в течение многих лет он практически не использовался и считался малопригодным, просто причудливым способом отображения состояния загрузки.
Однако с выходом
React
18 у Suspense
появился целый ряд новых преимуществ, которые заслуживают того, чтобы взглянуть на них еще раз. К сожалению, эти преимущества могут варьироваться от неинтересных до эзотерических и существенно зависят от архитектуры вашего приложения.
Давайте рассмотрим три наиболее распространенные на сегодняшний день архитектуры рендеринга и то, какую роль в них может сыграть
React Suspense.
📌 Статья
@react_tg
👍10❤1🔥1
🔥 Дайджест полезных материалов из мира React за неделю
Почитать:
— Современный junior frontend developer на двух работах уровня middle с общей ЗП 400к. Реальность ли в 2023 году?
— Wolfram Language JavaScript Frontend
— «Нейрогород»: игра на знание JavaScript про фронтендерские баги
— Мои первые шаги в создании браузерных 2D игр на чистом JavaScript + Canvas. Часть 1. Прототип
— Сайд эффект реактивности и апдейта компонента во Vue 3
— Вышел Chrome 118
— Что быстрее: Animated + useNativeDriver или Reanimated?
— Как внедрить гайд по стилю кода в проект
— 🔄 Displaying React Components in Reverse Order
— Easily style active links in Tanstack Router
— 🚀 Supercharge Your Next.js App with Stunning Images! Learn the Ultimate Cloudinary Image Upload Hack 🔥
— 3D Responsive Cool Text Animation In React.js
— Keep It Uplifting podcast. James “Uplifting” Edwards explores the intersection of lifestyle and success with Richard Blank.
— How ChatGPT helped me build an awesome React component
— Crafting Parallax Magic in Your React App: From Basics to Advanced
— Thinking Locally with Signals
— Making a custom 404 page in Next.js
— Higher Order Components: Cleaning Up Repetitive React Code
Посмотреть:
🌐 How To Create The YouTube Home Page With Tailwind, React, and TypeScript (⏱ 01:49:08)
🌐 Container Queries In TailwindCSS (⏱ 01:00)
Хорошего дня!
Почитать:
— Современный junior frontend developer на двух работах уровня middle с общей ЗП 400к. Реальность ли в 2023 году?
— Wolfram Language JavaScript Frontend
— «Нейрогород»: игра на знание JavaScript про фронтендерские баги
— Мои первые шаги в создании браузерных 2D игр на чистом JavaScript + Canvas. Часть 1. Прототип
— Сайд эффект реактивности и апдейта компонента во Vue 3
— Вышел Chrome 118
— Что быстрее: Animated + useNativeDriver или Reanimated?
— Как внедрить гайд по стилю кода в проект
— 🔄 Displaying React Components in Reverse Order
— Easily style active links in Tanstack Router
— 🚀 Supercharge Your Next.js App with Stunning Images! Learn the Ultimate Cloudinary Image Upload Hack 🔥
— 3D Responsive Cool Text Animation In React.js
— Keep It Uplifting podcast. James “Uplifting” Edwards explores the intersection of lifestyle and success with Richard Blank.
— How ChatGPT helped me build an awesome React component
— Crafting Parallax Magic in Your React App: From Basics to Advanced
— Thinking Locally with Signals
— Making a custom 404 page in Next.js
— Higher Order Components: Cleaning Up Repetitive React Code
Посмотреть:
🌐 How To Create The YouTube Home Page With Tailwind, React, and TypeScript (⏱ 01:49:08)
🌐 Container Queries In TailwindCSS (⏱ 01:00)
Хорошего дня!
👍9❤1🔥1
🚀 MERN - это мощный набор инструментов для создания веб-приложений полного стека.
Он пользуется популярностью как у начинающих, так и у опытных веб-разработчиков.
В этом углубленном курсе вы узнаете, как создать книжный магазин с использованием
• Курс
• Код
@react_tg
Он пользуется популярностью как у начинающих, так и у опытных веб-разработчиков.
В этом углубленном курсе вы узнаете, как создать книжный магазин с использованием
MongoDB, Express.js, React и Node.js.
• Курс
• Код
@react_tg
👍13👎3🤡2❤1🔥1🤩1
Она позволяет добавлять анимированные кнопки, исчезающий текст и многое другое - всего в нескольких строках кода.
В этом уроке показано как использовать Framer Motion для создания полностью анимированной боковой панели в React.
• Код проекта
• Урок
• Github
@react_tg
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥15❤🔥2❤1
Forwarded from Искусственный интеллект. Высокие технологии
Вышел GigaChat нового поколения. Разработчики @gigachat_bot качественно обновили его, изменив свой подход к обучению. Благодаря этому сервис стал лучше отвечать на запросы пользователей — примерно в два раза. При этом GigaChat также запустили в VK, аудитория сервиса уже достигла более 1 млн пользователей.
Попробовать.
@vistehno
Попробовать.
@vistehno
👍6❤1🔥1
🔥 Дайджест полезных материалов из мира React за неделю
Почитать:
— Fusor vs React
— JavaScript pattern CustomSwitch
— CRUD React c Redux и Saga + typescript в 2023
— Приглашаем на онлайн-митап «Гетерогенность, или Деплой JavaScript туда и обратно»
— Next JS и Nginx
— О чем расскажут на HolyJS 2023 Autumn: от архитектуры до карьеры
— Vue.js 3 — шаблоны проектирования и лучшие практики
— Небольшое React приложение со своим бекендом, запускаем с одного терминала
— PiterJS: сентябрь/октябрь
— Взаимодействие с Midjourney с использованием Discord API
— css loader
— 7 Github Repositories to Master React 😎
— Optimizing Web Performance: PNG Compression⚡
— The Top 10 Reusable Components in React
— Flatiron - Phase 4
— Optimize Your React Code: Avoid Unnecessary useState Hooks
— Understanding React Props: A Fundamental Building Block
— Building a Full Stack Application with Ruby on Rails and React within the MVC Architecture
— Passing Props in React
— Create a Chrome Extension with React FW Plasmo
Посмотреть:
🌐 You Suck At Accessibility (But You Don't Have To) (⏱ 13:23)
🌐 This New Node Feature Is Super Convenient (⏱ 00:43)
Хорошего дня!
@react_tg
Почитать:
— Fusor vs React
— JavaScript pattern CustomSwitch
— CRUD React c Redux и Saga + typescript в 2023
— Приглашаем на онлайн-митап «Гетерогенность, или Деплой JavaScript туда и обратно»
— Next JS и Nginx
— О чем расскажут на HolyJS 2023 Autumn: от архитектуры до карьеры
— Vue.js 3 — шаблоны проектирования и лучшие практики
— Небольшое React приложение со своим бекендом, запускаем с одного терминала
— PiterJS: сентябрь/октябрь
— Взаимодействие с Midjourney с использованием Discord API
— css loader
— 7 Github Repositories to Master React 😎
— Optimizing Web Performance: PNG Compression⚡
— The Top 10 Reusable Components in React
— Flatiron - Phase 4
— Optimize Your React Code: Avoid Unnecessary useState Hooks
— Understanding React Props: A Fundamental Building Block
— Building a Full Stack Application with Ruby on Rails and React within the MVC Architecture
— Passing Props in React
— Create a Chrome Extension with React FW Plasmo
Посмотреть:
🌐 You Suck At Accessibility (But You Don't Have To) (⏱ 13:23)
🌐 This New Node Feature Is Super Convenient (⏱ 00:43)
Хорошего дня!
@react_tg
❤7👍5🔥1
®️Основные различия между React.js и React Native
Есть ли разница между React.js и React Native?
В демонстрационных целях я создал два проекта:
1. Для React Native с помощью команды: yarn create expo-app AwesomeProject.
2. Для React.js с помощью команды: npx create-next-app reactjs-awesome-project.
Рассмотрим соответствующие файлы package.json.
Рис. 1 Файл package.json проекта, созданного для React Native
Рис. 2. Файл package.json проекта, созданного для React.js
Как видите, оба проекта используют одну версию React-библиотеки. Если обратить внимание на строку 15 рис. 1 и строку 21 рис. 2, то можно заметить, что проект React Native основан на зависимости react-native, а проект React.js — на react-dom.
Итак, оба проекта используют React-библиотеку, а значит, сравнение React.js и React Native можно свести к сравнению React Dom и React Native.
Чтобы выявить различия между React DOM и React Native и понять, легко ли веб-разработчику React перейти к разработке с React Native, изучим сначала три основные библиотеки: React.js, React DOM и React Native.
Посмотрим, что они представляет собой и как работают.⬇️
📌 Читать
@react_js
Есть ли разница между React.js и React Native?
В демонстрационных целях я создал два проекта:
1. Для React Native с помощью команды: yarn create expo-app AwesomeProject.
2. Для React.js с помощью команды: npx create-next-app reactjs-awesome-project.
Рассмотрим соответствующие файлы package.json.
Рис. 1 Файл package.json проекта, созданного для React Native
Рис. 2. Файл package.json проекта, созданного для React.js
Как видите, оба проекта используют одну версию React-библиотеки. Если обратить внимание на строку 15 рис. 1 и строку 21 рис. 2, то можно заметить, что проект React Native основан на зависимости react-native, а проект React.js — на react-dom.
Итак, оба проекта используют React-библиотеку, а значит, сравнение React.js и React Native можно свести к сравнению React Dom и React Native.
Чтобы выявить различия между React DOM и React Native и понять, легко ли веб-разработчику React перейти к разработке с React Native, изучим сначала три основные библиотеки: React.js, React DOM и React Native.
Посмотрим, что они представляет собой и как работают.
📌 Читать
@react_js
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥10🥱6👍4❤1🤔1
This media is not supported in your browser
VIEW IN TELEGRAM
Shapes, Clip-Path and CSS Grid — демонстрация CSS Shapes, CSS-свойства clip-path и CSS Grid. Реализована с помощью CSS и JavaScript
#анимация #css #javascript
https://codepen.io/mandymichael/pen/axZyoP
@react_tg
#анимация #css #javascript
https://codepen.io/mandymichael/pen/axZyoP
@react_tg
👍8❤1🔥1
🔥 Дайджест полезных материалов из мира React за неделю
Почитать:
— Как мы заинжектили кнопку на Behance
— Гайд по микрофронтендам на single-spa, или Как уже наконец-то уйти от монолита во фронтенде
— Как можно использовать .NET из Javascript (React) в 2023 году
— Простой пример ИИ для управления роботом. TensorFlow + Node Js
— 8 углубленных вопросов на собеседованиях на роль сеньора в JavaScript
— React vs Vue vs Angular. Часть 3
— Как выстроить удобные процессы в работе с монорепой
— 9 алгоритмов сортировки и поиска для JS, о которых вас спросят на собеседовании
— Особенности кодировки строк в Base64 в JavaScript
— Service Workers против медленного интернета: Кэширование и улучшение UX
— Can someone give me a link to download this book for free ? "Understanding Redux by Ohans Emmanuel"
— Announcing the First Ever State of React Survey
— Next.js + Redoc to create a low-latency API references
— Performing CRUD Operations in a React-Express-MongoDB Application
— React Search Using-Debounce
— How and when to use keys in React
— Wow! Server Actions are now Stable from Next.js 14! Dramatic changes in React and Next's form
— Fetching and rendering data from an API in React.js
— Building a Stopwatch in React
— The Top Animation Libraries for React in 2023
Посмотреть:
🌐 Did Josh Make A Mistake? (⏱ 06:58)
🌐 This Experimental Chrome Accessibility Feature Is A Game Changer (⏱ 00:48)
Хорошего дня!
@react_tg
Почитать:
— Как мы заинжектили кнопку на Behance
— Гайд по микрофронтендам на single-spa, или Как уже наконец-то уйти от монолита во фронтенде
— Как можно использовать .NET из Javascript (React) в 2023 году
— Простой пример ИИ для управления роботом. TensorFlow + Node Js
— 8 углубленных вопросов на собеседованиях на роль сеньора в JavaScript
— React vs Vue vs Angular. Часть 3
— Как выстроить удобные процессы в работе с монорепой
— 9 алгоритмов сортировки и поиска для JS, о которых вас спросят на собеседовании
— Особенности кодировки строк в Base64 в JavaScript
— Service Workers против медленного интернета: Кэширование и улучшение UX
— Can someone give me a link to download this book for free ? "Understanding Redux by Ohans Emmanuel"
— Announcing the First Ever State of React Survey
— Next.js + Redoc to create a low-latency API references
— Performing CRUD Operations in a React-Express-MongoDB Application
— React Search Using-Debounce
— How and when to use keys in React
— Wow! Server Actions are now Stable from Next.js 14! Dramatic changes in React and Next's form
— Fetching and rendering data from an API in React.js
— Building a Stopwatch in React
— The Top Animation Libraries for React in 2023
Посмотреть:
🌐 Did Josh Make A Mistake? (⏱ 06:58)
🌐 This Experimental Chrome Accessibility Feature Is A Game Changer (⏱ 00:48)
Хорошего дня!
@react_tg
👍12🔥3❤1🤔1
This media is not supported in your browser
VIEW IN TELEGRAM
❌ Избегайте использования
✅ Вместо этого используйте
@react_tg
Conditional Rendering
для рендеринга вьюх в React.✅ Вместо этого используйте
Enums
@react_tg
👍43🔥7❤6
This media is not supported in your browser
VIEW IN TELEGRAM
Главные принципы при разработке проектов:
✅ масштабируемость
✅ аккуратность кода
✅ ясность
@react_tg
Please open Telegram to view this post
VIEW IN TELEGRAM
👍48❤5🔥4🤡3🍌3
🔥 Дайджест полезных материалов из мира React за неделю
Почитать:
— Какие неочевидные темы вспомнить перед собеседованием на Frontend разработчика
— Что такое деление по модулю в JavaScript?
— Почему я не буду использовать Next.js
— Redux-toolkit и переиспользование кода
— Разработка браузерных игр с использованием Phaser3, React, Typescript
— Два frontend фреймворка. Два подхода
— Как не программист, вероятно, написал самую быструю библиотеку в мире
— Что нового в Chrome 119?
— Взаимодействие с Midjourney с использованием Discord API • Часть II
— Conditional rendering in React
— Looking for Open-source contribution opportunities
— Yet Another Newsletter LOL: The Narrows
— Redesigned , developed my Portfolio website in React.js and Tailwind CSS
— Why useSyncExternalStore Is Not Used in Jotai
— I built a Snake Game in React
— Why React is Winning the Web: Insights into the Most Popular UI Library
— Preserving Special Characters in Query Parameters: A React Journey
— Learn React The Hard Way: Manage State Better
— React component for an amazing card border and glow animation
Посмотреть:
🌐 Node Just Released This Amazing Feature! (⏱ 00:44)
🌐 Why Signals Are Better Than React Hooks (⏱ 16:30)
Хорошего дня!
@react_tg
Почитать:
— Какие неочевидные темы вспомнить перед собеседованием на Frontend разработчика
— Что такое деление по модулю в JavaScript?
— Почему я не буду использовать Next.js
— Redux-toolkit и переиспользование кода
— Разработка браузерных игр с использованием Phaser3, React, Typescript
— Два frontend фреймворка. Два подхода
— Как не программист, вероятно, написал самую быструю библиотеку в мире
— Что нового в Chrome 119?
— Взаимодействие с Midjourney с использованием Discord API • Часть II
— Conditional rendering in React
— Looking for Open-source contribution opportunities
— Yet Another Newsletter LOL: The Narrows
— Redesigned , developed my Portfolio website in React.js and Tailwind CSS
— Why useSyncExternalStore Is Not Used in Jotai
— I built a Snake Game in React
— Why React is Winning the Web: Insights into the Most Popular UI Library
— Preserving Special Characters in Query Parameters: A React Journey
— Learn React The Hard Way: Manage State Better
— React component for an amazing card border and glow animation
Посмотреть:
🌐 Node Just Released This Amazing Feature! (⏱ 00:44)
🌐 Why Signals Are Better Than React Hooks (⏱ 16:30)
Хорошего дня!
@react_tg
👍17🔥4❤2👌1
This media is not supported in your browser
VIEW IN TELEGRAM
Знаете ли вы, как называть компоненты React с помощью шаблона Base + Composite + Suffix?
Этот паттерн можно использовать для создания понятных и согласованных имен компонентов в своих проектах.
@react_tg
Этот паттерн можно использовать для создания понятных и согласованных имен компонентов в своих проектах.
@react_tg
❤24👍4🔥1
Почему в React важен порядок вызова хуков?
Понимание механизмов работы хуков React имеет первостепенное значение для любого фронтенд-разработчика, стремящегося освоить React-фреймворк. Предоставляя массу возможностей для функциональных компонентов, хуки в то же время подчиняются ряду правил.
Непростая ситуация
Хуки очень полезны для получения данных. Когда источники данных связаны между собой, иногда нужно выполнить внутри компонента функции нечто подобное:
Проблема здесь заключается в том, что userId = data.id может быть еще не определено. Прежде чем выполнять второй вызов, вы, возможно, захотите проверить, является ли загрузка loading false:
Однако если сделать что-то подобное, в консоли появится ошибка, связанная с нарушением правил использования хуков. Правила использования хуков таковы.
1. Вызывать хуки можно только на верхнем уровне компонента функции.
2. Вызывать хуки можно только на верхнем уровне другого хука.
Заметим, что хук — это любая функция, имя которой начинается со строки use. Это означает, что:
1. нельзя вызывать хук внутри условия или цикла;
2. нельзя вызывать хук после условного возврата;
3. нельзя вызывать хук в компоненте класса.
Смысл этих правил заключается в том, что порядок вызова каждого хука должен быть абсолютно одинаковым при каждом вызове компонента.
Почему порядок вызовов хуков имеет значение⬅️ читать
@react_tg
Понимание механизмов работы хуков React имеет первостепенное значение для любого фронтенд-разработчика, стремящегося освоить React-фреймворк. Предоставляя массу возможностей для функциональных компонентов, хуки в то же время подчиняются ряду правил.
Непростая ситуация
Хуки очень полезны для получения данных. Когда источники данных связаны между собой, иногда нужно выполнить внутри компонента функции нечто подобное:
const { data, loading } = useGetData();
const userId = data.id;
const { relatedData } = useGetRelatedDataForUser(userId);
Проблема здесь заключается в том, что userId = data.id может быть еще не определено. Прежде чем выполнять второй вызов, вы, возможно, захотите проверить, является ли загрузка loading false:
const { data, loading } = useGetData();
if (!loading){
const userId = data.id;
const { relatedData } = useGetRelatedDataForUser(userId);
}
Однако если сделать что-то подобное, в консоли появится ошибка, связанная с нарушением правил использования хуков. Правила использования хуков таковы.
1. Вызывать хуки можно только на верхнем уровне компонента функции.
2. Вызывать хуки можно только на верхнем уровне другого хука.
Заметим, что хук — это любая функция, имя которой начинается со строки use. Это означает, что:
1. нельзя вызывать хук внутри условия или цикла;
2. нельзя вызывать хук после условного возврата;
3. нельзя вызывать хук в компоненте класса.
Смысл этих правил заключается в том, что порядок вызова каждого хука должен быть абсолютно одинаковым при каждом вызове компонента.
Почему порядок вызовов хуков имеет значение
@react_tg
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9❤3🔥3🌚1