2016-02-29 9 views
4

Интересно, как показывать и скрывать модальный диалог с помощью Om или Reagent. Поскольку мой пользовательский интерфейс является функцией в состоянии, show/hide должен запускаться с помощью свойства в этом состоянии.Как сделать модальные диалоги с помощью Om или Reagent (и Bootstrap)

Но фреймворкам, таким как Bootstrap, требуется вызывать некоторые JavaScript для отображения/скрытия диалогов.

Есть ли общее решение этой проблемы?

+3

Проверьте [Поваренную книгу по реагенту] (https://github.com/reagent-project/reagent-cookbook/tree/master/recipes/bootstrap-modal). – jmargolisvt

ответ

6

Не используйте эффекты javascript или jquery для отображения/скрытия диалогов в Om или Reagent. Вместо этого введите значение atom, чтобы определить, должно ли отображаться модальное диалоговое окно. Вот пример для реагента:

[(fn [shown] 
     (if shown 
     [:div.jumbotron.modal-background 
      {:on-click #(reset! popup-shown false)} 
      [:div.alert.alert-info 
      [:div "Hello!"]]] 
     [:div])) 
    @popup-shown] 
+0

Это работает, но это не модально. Bootstrap modal не будет отображаться по умолчанию. Это означает, что если вы ставите 'modal' вместо' jumbotron', это не сработает. – foki

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

  • Нет связанных вопросов^_^