Рубрики
Без рубрики

Rxjs 7 выпущен 🎉

Intro RXJS V7.0.0 был выпущен всего несколько дней назад, после того, как бета P … длиной более чем один год P … Tagged с WebDev, функциональным, JavaScript.

RXJS v7.0.0 был выпущен всего несколько дней назад, после более чем один год длиной бета-версии. Это, безусловно, самая используемая библиотека реактивного расширения, используемая для JavaScript с загрузкой ~ 24 миллиона в неделю. NPM -страница

До сих пор нет удаления, но много деформаций – которые будут удалены позже – поэтому рекомендуется выделить время для обновления RXJS!

Какие новости

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

Меньший размер пачки

Стоит тот, что весь пакет прошел через создатели, чтобы проверить, где есть возможности – в конце – уменьшить размер пакета. Там не было никакого крупного рефактора с приложением – как я видел и читал.

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

Вы можете проверить размер пакета здесь, на Bundlephobia Анкет

Последние интерференции TypeScript & Letter Type

RXJS использует новейший TypeScript (по состоянию на 2021.05.06), а также имеет некоторые реальные улучшения, мешающие различным типам. Ограничение, что около 7/8 аргумента RXJS не смог обращаться с типами, больше не существует!

Есть еще один пример для этого, давайте посмотрим на это.

of(new Date(), null, undefined)
  .pipe(filter(Boolean))
  .subscribe();

Теперь тип будет Наблюдаемое <дата> , но это было Наблюдаемое <неопределенное> в RXJS 6.

Топромис Университет

Возможно, это не имеет значения для кого -то, но от этого может быть затронуто много проектов. Topromise устарел в RXJS 7, и есть два новых оператора, заменяющих этот, называемый FirstValueFrom и LASTVALUEFROM . Это огромное улучшение для надежности для многих кодовых баз.

Как указывает имя, FirstValueFrom Решает с первым значением потока и LASTVALUEFROM Вернуться с последним значением из наблюдаемого потока. Если не испускаются значения, ошибка выбрасывается. В отличие от Topromise, который решается просто с неопределенным.

Операторы переименованы

Я помню, что у нас была дискуссия с командой: «Желаю, чтобы у операторов в RXJ было более разговорчивые имена». Это случилось, так что следующие операторы переименованы

  • CombineLatest -> CombineLateStwith
  • Merge -> слиться с
  • Zip -> Zipwith
  • concat -> Concatwith
  • гонка -> гонка с

Оператор повторной попытки с ResetOnsuccess

Ранее параметр оператора повторной попытки не был сброшен после успешных попыток. Теперь есть параметр конфигурации, чтобы указать это.

...
retry({ count: 2, resetOnSuccess: true })
...

Удаление нескольких вариантов обратного вызова

В RXJS 7 многократный обратный вызов для выполнения, ошибка, завершение была удалена из Нажмите и подписываться . Теперь вам нужно передать объект для этой конфигурации, просто чтобы заставить вас думать два раза и убедиться.

Теперь вместо этого

obs$.pipe(tap(
  data => console.log(data),
  error => console.log(error)
)).subscribe(
  data => console.log(data),
  error => console.log(error)
)

Теперь вам нужно сделать следующее:

source$.pipe(tap(
  data => console.log(data)
)).subscribe(
  {
    next:  data => console.log(data), 
    error:  err => console.log(err),
  }
)

Быстрее

Согласно некоторым твитам и дискуссиям, разработчики утверждают, что RXJS 7 быстрее. Тем не менее, это должно выдержать исследование времени, но я думаю, что это будет.:)

Сноска

Конечно, есть несколько других обновлений в RXJS и Shoutout команде разработчиков для выпуска этого пакета. Вы можете прочитать больше об обновлении подробно по следующим ссылкам:

Изменить резюме Средняя статья Обоснованная статья

Оригинал: “https://dev.to/vazsonyidl/rxjs-7-is-released-323a”