Да, вы можете написать свое собственное промежуточное ПО в стиле Redux-Observable.
Кто-то, кого я знаю, должен сделать это, потому что ее компания не приняла Rx JS, но затем она сильно проигрывает из инструментов, которые вы получаете от операторов конвейера Redux и Rx JS.
Хотя делать это самостоятельно не всегда лучший способ. Redux-Observable обрабатывает множество сложных вещей за кулисами. Я написал свой собственный для специфики c scenar ios, где у меня нет Redux, но если у меня есть, я go с Redux-Observable.
Другой способ описать это, вы могли бы создать функцию промежуточного программного обеспечения для каждого epi c или создать отдельное промежуточное программное обеспечение, которое собирает кучу эпопей и создает один родительский конвейер.
Таким же образом вы можете иметь один Редуктор, который объединяет несколько меньших редукторов. combineReducers
позволяет вам делать это в иерархии, но каждый редуктор не знает о состоянии других.
combineEpics
делает то же самое. Хотя вы можете добавлять их иерархически, технически это не имеет значения. Чтобы было ясно, иерархия имеет значение, если вы передаете combineEpics
где-нибудь в вашей кодовой базе. Вероятно, не рекомендуется.
Ваш вопрос также можно перефразировать так: «Почему я должен использовать Redux, если я могу написать свой собственный объект методами getState
, dispatch
и subscribe
? Единственная причина, по которой вы» Напишите свой собственный Redux, если вы находитесь в ситуации, когда вы не хотите использовать редукторы для управления состоянием или у вас есть собственный сценарий, в котором вы хотите поведение, подобное Redux, но на самом деле не Redux библиотеки.