В соответствии с Flux Architecture View использует действие для вызова диспетчера, который обновляет Store, в то время как просмотр прослушивания сохраняет события изменения.В флюсе, зачем нужен магазин?
Мой вопрос: зачем нам хранить?
Чтобы перечислить всех пользователей, мой компонент вызовет ListAllUsersAction, который в свою очередь вызовет мой API и обновит Store с помощью вызова API. Затем Store затем испускает событие изменения, которое прослушивает View. Но магазин также сохраняет результат. Зачем? Почему этот средний слой нужен? Я вообще не позвоню в магазин, так что этот уровень кэша не имеет для меня никакого смысла, и поскольку я генерирую больше событий, которые загружают больше данных, в конечном итоге все мои магазины будут иметь все состояние моего приложения, потому что в архитектуре потока ничего не говорится об очистке магазинов ,
Я что-то упустил?
Целью Flux Store является хранение данных, которые необходимо разделить на несколько компонентов. Если никакие компоненты не нуждаются в данных, кроме одного, и данные не будут преобразованы - не требуется магазин. – Roman
Хорошо, позвольте мне уточнить немного больше. Допустим, что сообщения нужны только в одном компоненте: PostList. В соответствии с вашим ответом мне не нужен PostStore в таком случае. Когда мой компонент PostList загружен, он вызывает LoadAllPostsAction, но ti, кого испускает Action? Компонент не может прослушивать Actions, потому что поток прерывается. Он должен быть Component -> Action -> Store -> Component, и это закрывает однонаправленный поток данных. Я ошибаюсь? –
Я только что наткнулся на [обсуждение] (https://groups.google.com/forum/#!topic/reactjs/pZYYbyOHKCs), которое должно помочь прояснить ситуацию, главным образом, 4-го и 5-го сообщений. –