🦊 Angular Fox 🚀 — русскогорящие новости сообщества
3.97K subscribers
1.21K photos
7 videos
1.06K links
Как костыль на реактивно-лисьей тяге 🔥🦊

Нравится канал? Подпишись на меня!
👉 twitter.com/thekiba_ru
💖 twitter.com/thekiba_io
medium.com/@thekiba
github.com/thekiba

Чаты @angular_ru @angular_jobs
Download Telegram
Последние обновления effect()

Благодаря обратной связи о effect() во время его предварительного тестирования, команда Angular выявила несколько улучшений в дизайне, которые решают проблемы как с функциональностью, так и с опытом разработки.

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

👉 https://blog.angular.dev/latest-updates-to-effect-in-angular-f2d2648defcd
👍72🔥2
Анимация списков

Angular включает в себя сложную систему анимации, которая особенно полезна для элементов при их появлении или исчезновении на экране.

Давайте рассмотрим, как она работает на примере анимаций списков.

👉 https://dev.to/this-is-angular/angular-lab-animating-lists-and-using-animationbuilder-for-imperative-animations-1e9j
👍4👏1
Maskito: то, что вы давно искали

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

Александр Инкин рассказал, почему Maskito заслуживает вашего внимания.

👉 https://habr.com/ru/companies/tbank/articles/850790/
🔥21👍6😁4🤮1
Анонс TypeScript 5.7 Beta

Недавно вышла бета-версия TypeScript 5.7, и среди нововведений можно выделить следующие:

- Проверки для переменных, которые никогда не инициализировались.
- Перезапись путей для относительных путей.
- Поддержка --target es2024 и --lib es2024.

👉 https://devblogs.microsoft.com/typescript/announcing-typescript-5-7-beta/
👍2
Разные точки зрения при работе с Angular

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

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

👉 https://www.angularspace.com/angular-friction-points/
👍17🔥2👏1
Как использовать менеджер состояний NgRx для Angular-проектов

NgRx предлагает управление глобальным и локальным состоянием, работу с побочными эффектами, интеграцию с Angular Router и многое другое. Однако важно заранее понять, стоит ли использовать его в вашем проекте, так как временные затраты на разработку могут не окупиться.

В статье рассматриваются ключевые особенности NgRx с попыткой выделить его преимущества и недостатки.

👉 https://habr.com/ru/companies/simbirsoft/articles/851362/
👍8👎2🔥1👏1
Chrome расширение на Angular 18

Иногда возникает желание изменить функционал стороннего сайта или подкорректировать его дизайн.

Автор решил поделиться своим опытом разработки расширения для Chrome, рассказав о возникших трудностях и путях их решения.

👉 https://habr.com/ru/articles/851234/
👍9🔥31
Angular Incremental Hydration

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

В Angular, используя блок defer, можно контролировать, когда и каким образом отдельные части приложения становятся интерактивными. Контент может быть гидратирован по мере действий пользователя, видимости элементов или по определённым условиям.

👉 https://dev.to/this-is-angular/keep-hydrated-with-angular-incremental-hydration-2apa
👍7🐳2
ИИ в современных Angular-проектах

Пересечение ИИ и фронтенд-разработки меняет подход к созданию, тестированию и управлению приложениями.

Интеграция нейросетей в наши проекты, например, с помощью Cursor IDE, позволяет значительно упростить многие процессы, такие как автоматизация утилитарных функций, создание юнит-тестов и рефакторинг. Он также может следить за соблюдением архитектурных правил и выполнять другие задачи.

👉 https://www.angularspace.com/ai-in-modern-angular-workspaces-the-future-is-now/
👎6👍4👏1
Мощь CSS-масок

Наконец, CSS-свойство mask получило полную поддержку во всех современных браузерах без необходимости вендорных префиксов. Это значит, что осталось лишь привыкнуть к его использованию и не бояться применять.

Барсуков Никита напомнил теорию и поделился практическими примерами на основе опыта работы с Taiga UI.

👉 https://habr.com/ru/companies/tbank/articles/853042/
🔥14👍10👏1
Введение в Vitest и Angular

Теперь, когда в новых версиях Angular используется Vite, мы можем применять Vitest в наших Angular-проектах. Процесс установки прост, а синтаксис легко освоить.

В этой статье рассказывается, как настроить Vitest в приложении на Angular 18 для замены Karma, а также добавить покрытие кода, чтобы отслеживать, какой процент приложения охватывается юнит-тестами.

👉 https://www.angularspace.com/introduction-to-vitest-and-angular/
👍9🔥4🤔1
Лучшие практики для директив

Директивы — это мощный и универсальный инструмент, который, как и любой другой инструмент, может быть неправильно использован.

Однако, следуя рекомендациям, представленным в этой статье, вы сможете создавать более простые и понятные директивы, раскрыв их полный потенциал.

👉 https://www.angularspace.com/directive-best-practices/
👍9🔥5
Новый Resource API

Недавно был опубликовал Pull Request для нового Resource API, которое позволяет асинхронно загружать ресурсы с использованием сигналов. Типичный сценарий её использования — загрузка данных через HTTP.

В этой статье показывается, как реализовать типичный CRUD сценарий с использованием нового API.

👉 https://www.angulararchitects.io/en/blog/asynchronous-resources-with-angulars-new-resource-api/
🔥10👍5
Все, что вам нужно знать об Resource API

Если присмотреться к новому API, можно заметить, что функция resource() по умолчанию использует промисы. Однако Angular всегда был ориентирован на использование Observables.

Чтобы это исправить, можно воспользоваться функцией rxResource().

👉 https://push-based.io/article/everything-you-need-to-know-about-the-resource-api
👍7🔥3👏21
linkedSignal: управлять связанным состоянием теперь ещё проще

Недавно представили еще один реактивный примитив linkedSignal.

Он позволяет связывать сигналы, чтобы автоматически синхронизировались их значения на основе зависимостей.

👉 https://habr.com/ru/articles/854842/
👍10🔥6
Оптимизация реактивных форм

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

Здесь на помощь приходят стратегии оптимизации производительности, такие как ленивые и асинхронные валидаторы.

👉 https://dev.to/this-is-angular/optimizing-angular-reactive-forms-enhancing-performance-with-lazy-validation-and-async-validators-5c40
👍9👏1
Сброс или установка значения в LinkedSignal

LinkedSignal создаёт WritableSignal, что позволяет явно задавать значение или обновлять его при изменении источника.

В этой статье представлено четыре примера, демонстрирующие возможности LinkedSignal.

👉 https://dev.to/railsstudent/reset-or-set-the-value-in-linkedsignal-in-angular-19-587h
👍2👏2
Знакомьтесь: input, output и model

Наверняка многие уже успели познакомиться с новыми функциями input(), output() и model(), которые пришли на смену @Input и @Output. Но если вы откладывали это до последнего момента.

Статья Егора Молчанова поможет вам разобраться в них, а также понять особенности computed и effect.

👉 https://habr.com/ru/companies/domclick/articles/854530/
👍91🔥1
Получение данных с помощью resource и rxResource

Ранее мы упоминали, что команда Angular выпустила экспериментальные функции resource и rxResource для упрощения работы с данными. Эти функции доступны в двух вариантах: loader для resource возвращает Promise, а для rxResource — Observable.

В статье автор модернизировал свой старый проект для получения данных о покемонах, переписав его на Angular 19.0.0-next.11 и применив новые функции.

👉 https://dev.to/railsstudent/data-retrieval-with-the-experimental-resource-and-rxresource-functions-in-angular-19-fa9
👍2🔥1
Зачем нам Node.js или Angular на бэкенде

Когда говорят об применении Angular на сервере, часто подразумевают серверный рендеринг (SSR). Но эта статья фокусируется на вопросах переиспользования кода.

Александр Лобанов поделился, как их команда, используя Node.js и Angular, сократила дублирование кода, ускорила разработку и добилась согласованности между клиентом и сервером.

👉 https://habr.com/ru/companies/eftech/articles/856840/
💩4👍32👏1