Метод
Обычно React автоматически выполняет "батчинг" обновлений состояния внутри событий, таких как клики или события ввода. Однако, если обновление происходит вне этих контекстов, например, внутри
Пример применения:
Без использования
👉 @sWebDev
unstable_batchedUpdates
в Reactunstable_batchedUpdates
позволяет объединить несколько вызовов обновления состояния, чтобы минимизировать количество ререндеров компонентов. Обычно React автоматически выполняет "батчинг" обновлений состояния внутри событий, таких как клики или события ввода. Однако, если обновление происходит вне этих контекстов, например, внутри
setTimeout
или промиса, каждое изменение состояния вызывает отдельный ререндер. Пример применения:
import { unstable_batchedUpdates } from 'react-dom';
setTimeout(() => {
unstable_batchedUpdates(() => {
setState1(prev => prev + 1);
setState2(prev => prev + 1);
});
}, 1000);
Без использования
unstable_batchedUpdates
React вызвал бы два ререндера, один для каждого setState
. С помощью метода обновления объединяются в один ререндер, улучшая производительность приложения. 👉 @sWebDev
Minified.js
Minified.js – это легковесная JavaScript-библиотека, которая предоставляет функциональность для манипуляции DOM, обработки событий, выполнения AJAX-запросов и создания анимаций.
👉 @sWebDev
Minified.js – это легковесная JavaScript-библиотека, которая предоставляет функциональность для манипуляции DOM, обработки событий, выполнения AJAX-запросов и создания анимаций.
👉 @sWebDev
Media is too big
VIEW IN TELEGRAM
Parallax Grid
Пример параллакс анимации для сетки на странице реализованный с помощью GSAP.
👉 @sWebDev
Пример параллакс анимации для сетки на странице реализованный с помощью GSAP.
👉 @sWebDev
Интерактивное руководство по рендерингу в React
Это интерактивное руководство объясняет, как React рендерит и обновляет интерфейс: сначала создаёт UI, а затем обновляет только изменённые части при изменении состояния, демонстрируя процесс на примерах и диаграммах.
👉 @sWebDev
Это интерактивное руководство объясняет, как React рендерит и обновляет интерфейс: сначала создаёт UI, а затем обновляет только изменённые части при изменении состояния, демонстрируя процесс на примерах и диаграммах.
👉 @sWebDev
Swup
Swup – это библиотека для создания плавных переходов между страницами. Она позволяет загружать контент без перезагрузки страницы. Работает с заменой HTML-контента в рамках одной страницы.
👉 @sWebDev
Swup – это библиотека для создания плавных переходов между страницами. Она позволяет загружать контент без перезагрузки страницы. Работает с заменой HTML-контента в рамках одной страницы.
👉 @sWebDev
Работа с ChangeDetectorRef в Angular
Для чего используется
Если забыли, то вернитесь к посту от18.11.2024 .
👉 @sWebDev
Для чего используется
ChangeDetectorRef
в Angular?Если забыли, то вернитесь к посту от
👉 @sWebDev
Для чего используется ChangeDetectorRef в Angular?
Anonymous Quiz
78%
Для управления процессом обнаружения изменений.
12%
Для управления видимостью компонентов.
7%
Для создания маршрутов.
3%
Для загрузки внешних данных.
Управление анимациями с помощью AnimationBuilder
Пример:
👉 @sWebDev
AnimationBuilder
из модуля animations
позволяет создавать анимации в Angular. Он используется для динамического запуска или изменения анимаций на основе логики приложения. Пример:
import { Component, ElementRef } from '@angular/core';
import { AnimationBuilder, style, animate } from '@angular/animations';
@Component({
selector: 'app-animation',
template: `<div #box class="box"></div><button (click)="animate()">Animate</button>`,
styles: [`.box { width: 100px; height: 100px; background: red; margin-top: 20px; }`]
})
export class AnimationComponent {
constructor(private builder: AnimationBuilder, private el: ElementRef) {}
animate() {
const animation = this.builder.build([
style({ transform: 'translateX(0)' }),
animate('1s', style({ transform: 'translateX(300px)' })),
animate('1s', style({ transform: 'translateX(0)' }))
]);
animation.create(this.el.nativeElement.querySelector('.box')).play();
}
}
👉 @sWebDev
This media is not supported in your browser
VIEW IN TELEGRAM
Симулятор работы тимлидом
Представьте, что вы тимлид, и у вас есть месяц, чтобы довести проект до дедлайна. В вашем распоряжении трое сотрудников, мягко говоря, не самых старательных. Вместе с ними вам придется распределять задачи, выполнять работу и выслушивать их на зум-встречах.
👉 @sWebDev
Представьте, что вы тимлид, и у вас есть месяц, чтобы довести проект до дедлайна. В вашем распоряжении трое сотрудников, мягко говоря, не самых старательных. Вместе с ними вам придется распределять задачи, выполнять работу и выслушивать их на зум-встречах.
👉 @sWebDev
FileSaver.js
FileSaver.js — это библиотека для сохранения файлов непосредственно из браузера. Она работает с Blob-объектами и обеспечивает простой способ загрузки данных на стороне клиента без серверной обработки.
👉 @sWebDev
FileSaver.js — это библиотека для сохранения файлов непосредственно из браузера. Она работает с Blob-объектами и обеспечивает простой способ загрузки данных на стороне клиента без серверной обработки.
👉 @sWebDev
Управление компонентом React через URL
Статья объясняет, как синхронизировать состояние React-компонента с параметрами URL. Рассматриваются методы работы с
👉 @sWebDev
Статья объясняет, как синхронизировать состояние React-компонента с параметрами URL. Рассматриваются методы работы с
window.location
и библиотекой React Router
, чтобы изменять состояние компонента на основе текущего URL и сохранять параметры при обновлении страницы. Приведены примеры реализации с кодом.👉 @sWebDev
Choices.js
Choices.js — это легковесная библиотека для работы с пользовательскими элементами ввода, такими как выпадающие списки, многострочные выборы (multi-select), и текстовые поля с тегами. Она позволяет быстро создавать и стилизовать интерактивные элементы форм.
👉 @sWebDev
Choices.js — это легковесная библиотека для работы с пользовательскими элементами ввода, такими как выпадающие списки, многострочные выборы (multi-select), и текстовые поля с тегами. Она позволяет быстро создавать и стилизовать интерактивные элементы форм.
👉 @sWebDev