Frontender Libs - обзор библиотек JS / CSS
8.25K subscribers
2.04K photos
735 videos
3 files
242 links
Админ, сотрудничество, реклама: @seniorFrontPromo, @maria_seniorfront

Купить рекламу: https://telega.in/c/sWebDev
Download Telegram
Использование хуков React

Материал по работе с хуками в React. Автор рассказывает о работе с хуками жизненного цикла, хуками контекста и кастомными хуками React.

👉 @sWebDev
👍6🔥3
This media is not supported in your browser
VIEW IN TELEGRAM
Vanilla JS Snake

"Змейка", выполненная при помощи библиотеки Vanila.js

👉 @sWebDev
👍4🤔1
Настраиваем объект, передаваемый родительскому компоненту React

Хук useImperativeHandle в React используется для передачи определенных функций из компонента-родителя. Он позволяет родительскому компоненту вызывать методы вложенного компонента. Пример:

    import { forwardRef, useImperativeHandle } from 'react';

const ChildComponent = forwardRef((props, ref) => {
useImperativeHandle(ref, () => ({
focus: () => {
inputRef.current.focus();
}
}));

const inputRef = useRef(null);

return (
<input type="text" ref={inputRef} />
);
});

export default ChildComponent;


Мы экспортируем дочерний компонент ChildComponent, имеющий метод focus. Мы используем хук useImperativeHandle, чтобы экспортировать этот метод через ref.

👉 @sWebDev
👍6
5 ошибок начинающих разработчиков в React

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

👉 @sWebDev
👎5👍4
Media is too big
VIEW IN TELEGRAM
PixiJS

PixiJS часто используют в качестве игрового движка, но у библиотеки более широкое применение. Она упрощает вывод интерактивной 2D-графики и анимации в любых приложениях на базе HTML5. Для рендеринга PixiJS может использовать как WebGL, так и стандартный Canvas.

👉 @sWebDev
👍5
Media is too big
VIEW IN TELEGRAM
Three js - Interactive solar system

Анимированный проект солнечной системы, выполненный на Three.js.

👉 @sWebDev
👍7
Angular. Работа с template-driven формами

Разработчики angular, как правило знают, что для работы с формами существует два подхода: reactive forms и template driven forms. Также, хорошо известно, что для работы с формами разработан такой функционал как валидация, однако исчерпывающе описано его применения для подхода reactive forms. Давайте рассмотрим как можно получить те же преимущества для template driven подхода.

👉 @sWebDev
👍7
Media is too big
VIEW IN TELEGRAM
Airplanes

Реализация анимированного скролла при помощи библиотеки Gsap.js.

👉 @sWebDev
👍8🔥1
Управление состоянием компонента в React

Можем ли мы в React управлять состоянием компонента, используя функцию-редьюсер?

👉 @sWebDev
👍6
Возможно ли в React управлять состоянием компонента, используя функцию-редьюсер?
Anonymous Quiz
91%
Да
9%
Нет
🔥2
Media is too big
VIEW IN TELEGRAM
Voxelizing Three.js Geometries

Проект генератора геометрических фигур, выполненный с применением библиотеки Three.js.

👉 @sWebDev
👍5
Klona

Klona - это библиотека для создания копий JavaScript-объектов. Она поддерживает работу с обычными объектами, массивами, датами и другими структурами данных. Klona предоставляет дополнительные методы для взаимодействия с объектами. Например, клонирование с выбором глубины вложенности. Библиотека будет полезной для разработчиков, работающих с большими объемами данных и желающими повысить производительность своих приложений.

👉 @sWebDev
👍5👎1
Декомпозиция и интерфейс vue-компонентов

В большом vue-приложении всегда есть необходимость в декомпозиции компонентов и их логики. В статье приводятся размышления и некоторые выводы относительно подходов к декомпозиции vue-компонентов и их интерфейсу.

👉 @sWebDev
👍42
Оптимизируем производительность в React

Рассмотрим одну из новых фич Reacta - Automatic Batching. Батчинг является процессом оптимизации производительности в React, при котором несколько обновлений состояния и свойств компонентов объединяются в одно обновление перед рендерингом. Это позволяет уменьшить количество обновлений DOM и повысить производительность. Пример использования:

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

const handleClick = () => {
setCount(count + 1);
setCount(count + 1);
setCount(count + 1);
}

return (
<div>
<p>Count: {count}</p>
<button onClick={handleClick}>Increment</button>
</div>
);
}

При клике на Increment будет вызван три раза метод setCount, но благодаря batching'у обновления будут объединены в одно.

До React 18 батчинг также существовал, но автоматически работал только для обработчиков DOM событий.

👉 @sWebDev
👍5👎4🔥1
Встраивание WebGL в HTML-страницу с помощью Three.JS

В статье рассмотрим совмещение WebGL‑анимации с прокруткой страницы HTML, используя библиотеку Three.js. Работа с ней во многом схожа с работой 3D‑редактора. Для получения результата в виде картинки или анимации необходимо создать сцену, поместить в нее камеру, создать примитив (геометрию или 3D‑модель), создать источник освещения и запустить процесс рендеринга.

👉 @sWebDev
👍3
jsPDF

jsPDF - это библиотека для генерации PDF-документов на стороне клиента. Она позволяет создавать PDF-файлы из HTML-страниц, изображений и других типов контента, поддерживает множество настроек и опций для создания настраиваемых документов. JsPDF не требует установки дополнительного программного обеспечения и может быть использована в любом современном браузере.

👉 @sWebDev
👍9
This media is not supported in your browser
VIEW IN TELEGRAM
GSAP 3 Radio

Анимированное радио, выполненное с использованием библиотеки Gsap.js.

👉 @sWebDev
👍5
Зачем и когда использовать ng-template в Angular?

По ссылке обзор 3 полезных возможностей директивы <ng-template>.
👍3
This media is not supported in your browser
VIEW IN TELEGRAM
NanoSQL

NanoSQL - легковесная и быстрая база данных, которую можно использовать как в браузере, так и на сервере. Библиотека обладает множеством полезных функций, таких как индексы, транзакции, агрегирующие функции и т.д. NanoSQL поддерживает различные бэкэнды баз данных, включая IndexedDB, WebSQL, SQLite, LevelDB и другие.

👉 @sWebDev
👍7
This media is not supported in your browser
VIEW IN TELEGRAM
Toilet Paper Toggle

Забавный переключатель для сайта, выполненный с использованием библиотеки Gsap.js.

👉 @sWebDev
🔥8👎2👍1
Часто используемые шаблоны проектирования в Angular

Обзор нескольких распространенных паттернов проектирования в Angular, таких как Singleton, Facade, Observer и других. Материал описывает, как использовать каждый паттерн и какие преимущества он может принести в разработке приложений.

👉 @sWebDev
6👍3