Telegram Web Link
Тонкая настройка директивы ngModel

ngModelOptions – это объект, который позволяет настроить различные параметры директивы ngModel.

updateOn: определяет, когда происходит обновление модели (при blur, change или input).
debounceTime: задержка обновления модели (в миллисекундах).
emitModelToViewChange: позволяет синхронизировать изменения модели с представлением.
modelToViewConverter: функция для преобразования значения модели перед отображением в представлении.
viewToModelConverter: функция для преобразования значения представления перед сохранением в модели.

Пример использования:
@Component({
selector: 'my-app',
templateUrl: './app.component.html',
})
export class AppComponent {
model = '';

constructor() {}

ngOnInit() {
this.model = '初始值';
}
}

<input [(ngModel)]="model" ngModelOptions="{updateOn: 'blur', debounceTime: 500}">


В этом примере значение модели будет обновляться только при потере фокуса с поля ввода. обновление модели будет задерживаться на 500 миллисекунд.

👉 @sWebDev
This media is not supported in your browser
VIEW IN TELEGRAM
Разрыв фото на Gsap.js

Пример анимации разрыва фото на GSAP.js.

👉 @sWebDev
Управление состоянием в Angular: какие есть варианты?

Статья рассказывает о различных вариантах управления состоянием в Angular приложениях. Автор объясняет, что такое состояние, зачем им нужно управлять, и какие библиотеки и подходы существуют для этого.

👉 @sWebDev
Reatom

Reatom - это библиотека управления состоянием для React, которая является альтернативой RTK, Zustand и React Query.

Бибилиотека позволяет создавать глобальное состояние, которое можно легко использовать и изменять в любых компонентах с помощью хуков или декораторов. Также поддерживаются асинхронные действия, селекторы, подписки, отладки и другие возможности.

👉 @sWebDev
This media is not supported in your browser
VIEW IN TELEGRAM
When Animators Become Web Designers

Пример анимации загрузки страницы на GSAP.js.

👉 @sWebDev
Создание навигационной панели с помощью Angular 17 и Tailwind CSS

Гайд по созданию навигационной панели с помощью Angular 17 и Tailwind CSS.

👉 @sWebDev
Million.js

Million.js - это минималистичный фреймворк на JavaScript, который эффективно работает с элементами DOM. В отличие от традиционных фреймворков, которые обновляют весь DOM при каждом изменении состояния.

Библиотека использует более детальный подход, обновляя только необходимые части DOM. Million.js также имеет свой компилятор, который автоматически оптимизирует компоненты React на сервере.

👉 @sWebDev
Назначение action в хуке useFormState

Для чего используется атрибут action в хуке useFormState?

👉 @sWebDev
Веб-скрапинг с Bright Data, Node.js и Puppeteer

Статья рассказывает о том, как использовать Bright Data для эффективного сбора данных с веб-сайтов с помощью Node.js. В статье рассматриваются следующие темы: Введение в веб-скрапинг, преимущества Bright Data, настройка Node.js и сбор данных с помощью Bright Data и Puppeteer.

👉 @sWebDev
Бесплатный практический вебинар для всех возрастов: Профессия «Frontend-разработчик».

Когда: уже 14 марта в 19:00 по мск.

Вы узнаете о типичных рабочих задачах программиста и напишете мини-игру, которая работает прямо в браузере. Под капотом немного HTML+CSS и базовые конструкции JS.

Расскажем, что ждут работодатели от джунов, какие есть грейды во фронтенд-разработке и на какую зарплату рассчитывать в перспективе. Какие JS фреймворки учить: Vue, React, а может, Angular?

🎁 Всем, кто зарегистрировался — Карта компетенций начинающего Frontend-разработчика, а каждому участнику — Гайд «Как заговорить на сленге IT-специалистов».
Оптимизация жизненного цикла компонентов

afterRender и afterNextRender - это два новых хука жизненного цикла, которые были добавлены в Angular 17.

afterRender вызывается один раз после завершения рендеринга компонента.
Подходит для:
1) Доступа к DOM-элементам.
2) Инициализации сторонних библиотек.
3) Выполнения кода, который должен быть выполнен после рендеринга.

afterNextRender вызывается после каждого цикла обнаружения изменений.
Подходит для:
1) Синхронизации состояния компонента с DOM.
2) Обновления отображения в ответ на изменения данных.
3) Реагирования на изменения размеров окна.

afterRender и afterNextRender не вызываются при SSR (Server-Side Rendering).
afterNextRender не гарантирует, что DOM будет стабильным.

Пример:

export class MyComponent {
constructor() {}

ngAfterRender() {
console.log('Component has been rendered');
}

ngAfterNextRender() {
console.log('Component has been rendered and change detection has run');
}
}


👉 @sWebDev
Media is too big
VIEW IN TELEGRAM
Refokus 22

Пример анимации страницы на Three.js.

👉 @sWebDev
Мем смешной, а ситуация страшная. Лайк, если работая программистом, следишь за внешним видом и здоровьем.

👉 @sWebDev | #юмор
Packery

Библиотека Packery - это JavaScript-библиотека и jQuery-плагин, который позволяет создавать бесшовные и перетаскиваемые макеты. Она использует алгоритм bin-packing для заполнения пустых пробелов. Макеты Packery могут быть упорядочены интеллектуально или хаотично.

👉 @sWebDev
Как использовать forwardRef с generic компонентами

Статья рассказывает о том, как использовать forwardRef с обобщенными компонентами в React и TypeScript. Объясняется, почему стандартная реализация forwardRef приводит к потере вывода типов для обобщенных компонентов, и предлагается решение, которое позволяет восстановить вывод типов с помощью переопределения forwardRef с другим типом

👉 @sWebDev
Media is too big
VIEW IN TELEGRAM
AnimeJS Player

Пример реализации плеера на Anime.js.

👉 @sWebDev
FP.ts

FP.ts – это библиотека для функционального программирования (FP) на TypeScript. Она позволяет использовать популярные паттерны и абстракции, доступные в большинстве функциональных языков.

👉 @sWebDev
2025/07/07 15:09:00
Back to Top
HTML Embed Code: