Ответ 1
От создателя Редукса Дэн Абрамов:
Многие редукторы могут обрабатывать одно действие. Один редуктор может обрабатывать многие действия. Объединение их в совокупность отрицает многие преимущества того, как масштабируются приложения Flux и Redux. Это приводит к раздуванию кода и ненужной связи. Вы теряете гибкость реагирования на одно и то же действие из разных мест, и ваши создатели действия начинают действовать как "сеттеры", связанные с определенной формой состояния, тем самым связывая компоненты с ним.
Из документов Redux:
Мы предлагаем вам написать независимые небольшие функции редуктора, каждый из которых несет ответственность за обновления определенного состояния. Мы называем эту модель "композицией редуктора". Данное действие может быть обработано всеми, некоторыми или ни одним из них. Это приведет к тому, что компоненты будут отделены от фактических изменений данных, поскольку одно действие может повлиять на разные части дерева состояний, и нет необходимости, чтобы компонент знал об этом.
См. Этот разговор в твиттере и эту проблему на github для получения дополнительной информации.