2014-09-22 5 views
3

Как должно отображаться окно Модальное с использованием реализации Flux. Я могу обновить состояние компонента, чтобы отобразить модальное значение и закрыть его после завершения. Сохранение модальности вызовет действие и обновит хранилище. Но модальность не должна была быть закрыта. Затем мне нужно было выпустить другое событие или сохранить в магазине состояние модального.Флюс: Обработка Модальных окон

ответ

3

Для меня это нормально хранить состояние модальности в магазине. В случае сохранения события просто используйте логическое значение, чтобы сказать, должен ли отображаться модальный файл.

Ваш магазин не обязательно должен иметь один атрибут, он может быть более сложным. Как и массив и логическое значение. Когда произойдет сохранение, просто обновите свой массив и поставьте логический open=false, который вы будете использовать в вашем методе рендеринга, чтобы больше не отображать модальный. Для этого вам не нужны 2 действия, одно действие может обновить вашу модель магазина + обновить логическое значение до false. Сложность здесь заключается в том, чтобы знать, что положить в магазины. Как организовать свое государство ... Это может со временем стать довольно сложным. До сих пор я нашел большой успех, используя автономные компоненты со своими собственными магазинами, такими как виджеты. You can find more details here.

В более общем виде вы можете поместить свойства макета в магазины. Как курсор или положение мыши, открытые модальности, независимо от того, находится ли мышь над каким-то элементом или нет ...

+1

Я использую аналогичный подход, хранящий состояние в магазине в настоящее время. Как вы сказали, сложность знает, что положить в магазины. Проверьте ссылку, было бы более интересно, если у вас есть пример приложения. – pra

+0

Я согласен с этим. Мы делаем то же самое, но у нас есть магазин, который обрабатывает все модалы в определенном контексте. Итак, мы делаем ModalActionCreators.openModal ('CreatePostModal'); – stueynet

Смежные вопросы