React JS
17.6K subscribers
535 photos
58 videos
5 files
610 links
React программирование

@haarrp - admin

@itchannels_telegram - 🔥лучшие ит-каналы

@javascriptv - продвинутый javascript

@programming_books_it - бесплатные it книги

@ai_machinelearning_big_data - ml

№ 5037566384
Download Telegram
Наглядные примеры использования React Hooks

В этой статье вы узнаете различные особенности React Hooks и получите полезные советы по их использованию. Автор объясняет, как работать с хуками жизненного цикла, кастомными хуками и хуками контекста, а также как обрабатывать ошибки в хуках на наглядных примерах с кодом.

https://css-tricks.com/react-hooks-the-deep-cuts/

#react #фронтенд

@react_tg
👍133🔥1
React Spectrum — создание компонентов нового поколения

При переиспользовании компонентов или создании новых на основе старых нам необходимо каждый раз заново разбираться в.логике кода Это неудобно. Согласны?

Решением этой проблемы является React Spectrum от компании Adobe. Это библиотека, в которой логика для создания компонентов уже написана за вас. Вам необходимо только импортировать её к себе в проект и добавить кастомных стилей.

В этой статье вы можете посмотреть, как работает эта библиотека, а также познакомиться с аналогами:

https://habr.com/ru/articles/718000/

#react #фронтенд

@react_tg
👍18🍌32🔥1
Тестируйте свои React-компоненты с помощью Nightwatch и Testing Library

Nightwatch и Testing Library — два крайне полезных инструмента для тестирования компонентов. Первая библиотека написана на Node.js и позволяет проводить полноценное сквозное тестирование веб-приложений и сайтов, написанных на JS. В свою очередь Testing Library более минималистичный инструмент, созданный специально для тестирования React-компонентов.

В этой статье вы научитесь:

— устанавливать новый проект React с помощью Vite, который также используется внутри Nightwatch для компонентного тестирования;
— подключать и конфигурировать Nightwatch и Testing Library;
— имитировать API запросы с помощью плагина @nightwatch/api-testing;
— писать комплексные React-компонентные тесты, используя Nightwatch и Testing Library.

https://habr.com/ru/companies/otus/articles/719266/

#react #qa
👍93🔥2
Как писать комментарии в React: хорошие, плохие и уродливые

Когда дело доходит до написания комментариев, React предлагает синтаксис {/* Comment */}, который может быть немного многословен.

В этой статье вы можете посмотреть, как использовать обычные комментарии JSX и ещё 2 других способа комментирования, которые могут быть лучше:

https://dmitripavlutin.com/react-comments/

#react #фронтенд
7👍2🔥2
Самый безопасный способ скрыть ключи API при использовании React

Хотите убедиться, что ваши ключи API в целости и сохранности при работе с React? В этой статье вы увидите лучшие способы скрыть ключи API, от использования переменных среды до создания собственного внутреннего прокси-сервера.

Подробнее:

https://www.smashingmagazine.com/2023/05/safest-way-hide-api-keys-react/

#фронтенд #react
👍145🔥3
🔥 Дайджест полезных материалов из мира React за неделю

Почитать:
Удобные формы для Vue 3
Глубокий JS. В память о типах и данных
React + Three.js. Создаём собственный 3D шутер. Часть 2
Лучшие ресурсы чтобы выучить Git и Github
Поиск удобных мест для жизни в Москве на GitHub Pages с помощью DuckDB в браузере
Добавление WebAuthn в веб-приложение
Уроки рисования красных квадратов
Интерактивный парсер web страниц
Webpack vs esbuild — уже можно использовать в production?
Enhancing UX: Leveraging Nextjs Router Events for Form Manipulation
10 Essential React Hooks You Should Know
Gpen Demystified: Expert Insights from Dumpsarena
Optimizing JavaScript with Memoization: A Deep Dive into Boosting Performance:
How to handle loading screens in Next JS
Bape Sta White: A Classic Sneaker Icon
Utilising createPortal to build walkthrough experiences in React applications
VSCode Plugin For Feature Flags
Protected Routes with React.js and Next.js
3D Toggle Switch

Посмотреть:
🌐 How Is This Code Safe? ( 06:31)
🌐 NEW TypeScript Simplified Course - 24 Hour Sale ( 07:18)
🌐 I Can’t Believe Chrome Hides This From You ( 01:00)

Хорошего дня!

#digest #react

@react_tg
👍9🔥41
This media is not supported in your browser
VIEW IN TELEGRAM
🍔 Beat Burger

Приложение на React, анимированное библиотекой gsap. При нажатии на элементы проигрываются звуки.

#react #js

https://codepen.io/ste-vg/pen/MWpxKYR

@react_tg
18👍9🔥2
🖥 5 лучших библиотек всплывающих окон для React

Примеры профессионального использования всплывающих окон включают раскрывающиеся меню навигации, средства выбора дат и экскурсии во время процесса регистрации.

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

1 Popper.js
2
act-tiny-popover
3
react-laag
4
reactjs-popup
5
react Joyride

#js #react #ru

Подробнее

@react_tg
Please open Telegram to view this post
VIEW IN TELEGRAM
👍164🔥2
🖥 Replyke — встраиваемые комментарии для React

Инструмент работает все максимально просто: сами комментарии подключаются по системе plug&play, а настроить их можно прямо на веб-сайте проекта

Replyke предоставляет готовый к использованию компонент комментариев, который легко настраивается и интегрируется с существующими React-проектами

https://replyke.com/

#React #web

@react_tg
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7🔥21
This media is not supported in your browser
VIEW IN TELEGRAM
🚀 useLocation - #React TS хук, который предоставляет данные о геолокации в реальном времени, а также метрики курса движения и скорости. 🗺️📍

Используйте его для получения информации о близлежащих местах или для определения местоположения пользователей поблизости.

Демо
Код

@react_tg
👍25🔥63🤯3
This media is not supported in your browser
VIEW IN TELEGRAM
🌐🚀 #React hook - UseNetwork

Информация о сети в реальном времени! 📡

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

Отлично подходит для адаптации контента вашего приложения в зависимости от качества соединения пользователя! 📶💻

👉 Demo: https://grayscal.es/hooks/use-network

@react_tg
👍205🔥2❤‍🔥1
This media is not supported in your browser
VIEW IN TELEGRAM
🚀Попробуйте TextSelection - #React TS хук, который отслеживает выделение текста пользователем и его положение на экране!

Идеально подходит для создания интуитивно понятных функций пользовательского интерфейса, таких как всплывающая подсказка "Поделиться", подобно Medium.

Демо: https://grayscal.es/hooks/use-text-selection

Код: https://gist.github.com/KristofferEriksson/8acb9b3eb241507eb0f6232938bf4ec7

@react_tg
👍184🔥3
This media is not supported in your browser
VIEW IN TELEGRAM
⚡️ React Morph Clock

Оригинальные часы, созданные из svg-картинки на React.

#js #react

https://codepen.io/Siddharth11/pen/MjjdyW

@react_tg
👍19❤‍🔥43
This media is not supported in your browser
VIEW IN TELEGRAM
⚡️ React Range Sliders

Много хороших слайдеров в разном стиле.

#react #CodePen

https://codepen.io/dilums/pen/YzRwjBM

@react_tg
👍264🔥4
🎉 MeteorJS 3.0 — Долгожданный релиз спустя 3 года! 🚀

Наконец-то вышел MeteorJS 3.0, избавившись от Fibers в пользу async методов, что позволило обновить NodeJS до версии 20! 🎉 Теперь все методы и работа с БД выполняются асинхронно, улучшена документация, добавлена поддержка ARM на Linux. Для релиза выполнено 160 задач и обновлено множество пакетов. Это огромный шаг вперед для разработчиков! 🌟

📌Обсуждение на GitHub
📌Новая документация

#react #meteor #js

@react_tg
👍16🔥43❤‍🔥1🥱1
⚛️ React Custom Hooks позволяют повторно использовать логику состояния в компонентах React, интегрируясь с хуками useState и useEffect.


Пример Custom Hook, `useFetch`, показывает, как можно обрабатывать загрузку данных и управлять состоянием загрузки:

import { useState, useEffect } from 'react';

function useFetch(url) {
const [data, setData] = useState([]);
const [isLoading, setIsLoading] = useState(true);
const [error, setError] = useState(null);
useEffect(() => {
async function fetchData() {
try {
const response = await fetch(url);
const result = await response.json();
...


Helper Function, `formatDate`, не зависит от React и форматирует даты, используя dayjs:

import dayjs from 'dayjs';

function formatDate(date) {
return dayjs(date).format('MM/DD/YYYY');
}

Если требуется управление состоянием, используйте Custom Hooks. Для общих вычислений без привязки к состоянию лучше подходят Helper Functions.

#frontend #react #JavaScript #ReactJS
📎 Хабр

@react_tg
👍193🥰2🥱2🔥1😈1
This media is not supported in your browser
VIEW IN TELEGRAM
🖥 Совет по React: Используйте кастомный хук для управления состояниями массивов в ваших компонентах.

#react

@react_tg
Please open Telegram to view this post
VIEW IN TELEGRAM
👍49🔥96❤‍🔥1
⚡️ Создаём приложение для чата с помощью ReactJS и Firebase

Небольшое приложение со входом в аккаунт через учётную запись Google с помощью Firebase Authentication (SDK). Это инструмент Firebase, который поддерживает различные методы аутентификации, такие как пароли, номера телефонов, Google, Facebook, Twitter, GitHub и другие.

Все сообщения из чата пользователя хранятся в облаке Firestore. Cloud Firestore сохраняет данные в документах в виде пар ключ-значение.

В этой статье вы найдёте пошаговое руководство, как настроить проект в Firebase и React, и создадите полноценное приложение для чата:

https://www.freecodecamp.org/news/building-a-real-time-chat-app-with-reactjs-and-firebase/

#react

@react_tg
Please open Telegram to view this post
VIEW IN TELEGRAM
👍115🥴2😐1🍓1🖕1
📘 React-подсказка: как работает `useState`

Хук useState добавляет состояние в функциональный компонент, позволяя создавать интерактивные интерфейсы.

🔹 Что делает `useState`?
Добавляет состояние в функциональный компонент. Ты можешь отслеживать и изменять значения прямо внутри компонента.

🔧 1. Импорт

import { useState } from 'react';


🔧 2. Объявление состояния

const [count, setCount] = useState(0);

count — текущее значение
setCount — функция для обновления
0 — начальное значение

Примеры с разными типами данных:

const [name, setName] = useState('Alice'); // строка
const [isActive, setIsActive] = useState(false); // булево
const [user, setUser] = useState({ id: 1, name: 'Bob' }); // объект
const [items, setItems] = useState([]); // массив


🔧 3. Обновление состояния
Не изменяй значение напрямую — используй функцию:

setCount(count + 1);
setName('Charlie');
setIsActive(!isActive);
setUser({ ...user, name: 'David' });
setItems([...items, 'New']);


🎯 4. Функциональный стиль обновления
Если новое значение зависит от предыдущего:

setCount(prev => prev + 1);


📦 5. Несколько состояний в одном компоненте

function MyComponent() {
const [count, setCount] = useState(0);
const [text, setText] = useState('');

return (
<>
<button onClick={() => setCount(count + 1)}>+1</button>
<input value={text} onChange={e => setText(e.target.value)} />
<p>Счётчик: {count}</p>
<p>Текст: {text}</p>
</>
);
}


Что важно помнить

* useState возвращает массив [значение, функция].
* Обновление состояния асинхронно.
* При работе с объектами и массивами всегда создавай копии, не мутируй напрямую.

🔥 Пользуйся этой шпаргалкой, чтобы уверенно управлять состоянием в React-приложениях!
#React #useState #Frontend #JavaScript

@react_tg
👍153🔥1