Telegram Web
Через тернии к позиции Middle React разработчика

Статья которая поможет Junior-разработчикам перейти на уровень Middle. Узнайте, какие аспекты JavaScript и React важно освоить, почему стоит разобраться с Redux и Context API, и как тестирование и работа с Webpack и Docker повысят ваш профессионализм.

👉 @web_craft | #собес
👍4👎1
Media is too big
VIEW IN TELEGRAM
Cubes - three.js & anime.js

Анимация спирали на Anime.js и Three.js.

👉 @sWebDev
👍5
SpriteJS

SpriteJS — библиотека для 2D-рендеринга, подходящая для создания анимаций и игр. Поддерживает Canvas и WebGL, работает с текстом, формами и слоями, делая управление графикой простым и эффективным.

👉 @sWebDev
4🔥1
Работа с декораторами HostListener

Для чего обычно используется декоратор @HostListener в Angular?

Если забыли, то вернитесь к посту от 04.11.2024.

👉 @sWebDev
👍2👎1
This media is not supported in your browser
VIEW IN TELEGRAM
Насколько часто чужой код вызывает у вас недоумение?

👍 — Редко, всё интуитивно.

🤔 — Иногда встречаю странные решения.

❤️ — Регулярно, порой это сюрреализм.

👉 @sWebDev | #юмор
🤔20👍21
Метод ngAfterContentInit для управления контентом, переданным через ng-content

В Angular метод ngAfterContentInit является жизненным циклом компонента, который вызывается после инициализации контента, переданного через ng-content. Это позволяет выполнять операции над переданными дочерними элементами после того, как они станут частью DOM компонента.

Пример:
import { Component, ContentChild, AfterContentInit } from '@angular/core';
import { ElementRef } from '@angular/core';

@Component({
selector: 'app-card',
template: `<div class="card"><ng-content></ng-content></div>`
})
export class CardComponent implements AfterContentInit {
@ContentChild('header') header!: ElementRef;

ngAfterContentInit() {
if (!this.header) {
console.warn('Контент заголовка не передан!');
} else {
console.log('Заголовок загружен:', this.header.nativeElement.textContent);
}
}
}

Здесь CardComponent проверяет наличие элемента header и логгирует его содержание при успешной инициализации.

👉 @sWebDev
🔥3👍1
Media is too big
VIEW IN TELEGRAM
Tria

Абстрактная геометрическая анимация на Three.js.

👉 @sWebDev
👍4
Как думаете, баги на фронте легче исправлять?

👍 - Да, легче.

❤️ - Нет, не всегда, зависит от фронта.

👉 @sWebDev | #юмор
22👍4
Ztext.js

Ztext.js — лёгкая библиотека для добавления 3D-эффектов и анимаций к текстам на веб-страницах. Работает без WebGL и позволяет создавать глубину и ротацию текста. Подходит для выделения заголовков и декоративного текста.

👉 @sWebDev
👍4
Почему компонентная композиция — это отличная идея

Статья рассматривает преимущества подхода компонентной композиции в разработке React-приложений. Автор объясняет, как использование композиции позволяет создавать гибкие и переиспользуемые компоненты, которые проще настраивать и комбинировать.

👉 @sWebDev
👍41👎1
Media is too big
VIEW IN TELEGRAM
Glass Configurator

Генератор стакана на Three.js.

👉 @sWebDev
👍42
Focus-visible

Focus-visible — полифилл для псевдокласса :focus-visible, показывающий стили фокуса только для пользователей с клавиатурой. Упрощает стилизацию и улучшает доступность интерфейсов, скрывая фокус при использовании мыши.

👉 @sWebDev
4
Работа с опцией { static: true } в декораторе ViewChild

Что делает опция { static: true } в декораторе @ViewChild?

Если забыли, то вернитесь к посту от 10.11.2024.

👉 @sWebDev
👍3
Метод unstable_batchedUpdates в React

unstable_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
👍6👎1
This media is not supported in your browser
VIEW IN TELEGRAM
Cyberpunk DigiPurge

Страница в стиле киберпанк на на Three.js.

👉 @sWebDev
👎32
2025/07/08 15:24:50
Back to Top
HTML Embed Code: