Обновить

🦥 RxJS defer — ленивая инициализация Observable

defer — это фабрика, которая создает Observable только при подписке, а не во время объявления. Идеально подходит для:

  • HTTP-запросов (чтобы избежать преждевременного выполнения)

  • динамических данных (которые должны быть свежими при каждой подписке)

  • условных потоков (когда Observable зависит от состояния времени выполнения)

📌 Основные варианты использования

  1. Свежие данные при каждой подписке

    const freshData$ = defer(() => of(Date.now()));

    // Новая временная метка при каждой подписке()

  2. Работа с изменяемым состоянием

    const token$ = defer(() => of(localStorage.getItem('token')));

    // Всегда получает текущий токен, даже если обновлен

  3. Условные наблюдаемые

    const api$ = defer(() => isLoggedIn ? http.get('/user') : http.get('/guest') );

  4. Генерация случайного значения

    const random$ = defer(() => of(Math.random()));

    // Новое случайное число на подписку

🚫 Ограничения defer

  • нет кэширования → используйте shareReplay, если вам нужно повторно использовать результаты.

  • нет отмены запроса → объедините с switchMap/takeUntil для управления отменой

⚡Когда следует выбирать defer вместо обычных наблюдаемых?

  • данные должны быть свежими при каждом subscribe()

  • cоздание наблюдаемого стоит дорого и должно быть отложено

  • поток зависит от изменяемых условий (флаги функций, статус аутентификации и т. д.)

Больше об 🅰️ngular в моём Telegram-канале

Теги:
Рейтинг0
Комментарии0

Зуд от укуса комара или мошки — лютый биохимический прикол

Предположим, вас укусил комар прямо в попу.

Что там, вы не видите, но зудит, поэтому вы чешетесь. То есть прям берёте и начинаете водить ногтями по месту укуса. До тех пор, пока это отвратительное состояние зуда в моменте не пройдёт.

Прикол в том, что почесаться надо достаточно сильно, чтобы боль от царапин перекрыла сигнал зуда в спинном мозге. Тогда вы чувствуете облегчение на несколько секунд. Но механическое воздействие на это место усиливает выброс гистамина и цитокинов, и раздражение становится сильнее. А раздражение — главная причина зуда.

Есть ещё невероятный прикол с серотонином в этой же цепочке, но про него чуть позже.

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

Зуд от укуса комара даёт положительную обратную связь. Чем больше зудит, тем больше зудит.

Часто бывает, что 90% итогового воспалительного процесса — это не комар и его токсины, это мы своими ногтями.

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

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

Зуд от укуса комара или мошки — лютый биохимический прикол

Публикации