Я перевожу мое приложение activJs на redux / mobx.На данный момент у меня есть 3 компонента, каждый из которых имеет в своем состоянии следующую структуру:
name:string,
surname:string,
showError: boolean,
loading:boolean
Как видите, имеет смысл переместить имя / фамилию в централизованное хранилище, чтобы поддерживатьглобальное состояние.Я не очень уверен насчет showError и загрузки: они являются логическими значениями, предназначенными для отображения сообщения об ошибке и счетчика внутри конкретного компонента.
Лично мне не нравится идея помещать такие "UI-связанныесостояние "в централизованном состоянии, я бы хотел, чтобы он оставался внутри конкретного компонента, так как другим компонентам никогда не потребуется доступ / обновление таких вещей.
Так что моя идея заключается в следующем:
this.state = {showError, loading};
this.businessState = props.state;
Короче говоря, я продолжу обновлять «состояние» с помощью функции React setState (), оставляя для редукции / моба управление так называемым «бизнес-состоянием».
Может ли этобыть хорошей практикой или я делаю что-то особенно плохое?