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

Оператор раздела

Если вы используете в своем проекте библиотеку RxJS, вам следует использовать оператор partition.

Согласно документации, оператор:

«Разделяет исходный объект Observable на два: одно со значениями, удовлетворяющими предикату, а другое со значениями, не удовлетворяющими предикату».

Давайте посмотрим на пример в следующем абзаце.

Пример

Https://rxjs-partition.stackblitz.io/

Я создал DevelopersService, который позволяет предоставлять новых разработчиков. Поскольку есть разработчики Angular и другие: D, необходимо разделить исходный поток (developerSubject) на angularDevelopers $ и otherDevelopers $ потоки.

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

со следующим html-кодом

Выводы

Оператор partition действительно потрясающий! Если вы еще не использовали его, не ждите больше. Я столкнулся с оператором, читая архивные сообщения Netanel Basal, поэтому настоятельно рекомендую подписаться на этого парня.