Условные команды

У меня есть три основных представления в моем приложении: A, B и C. Каждое из этих представлений содержит представление с именем X. Щелчок по кнопке в представлении X отправляет FooEvent в пул событий.

Я хотел бы отобразить несколько команд в FooEvent и выполнить одну из них в зависимости от того, какой основной вид (A, B или C) является текущим видимым. Я должен был бы добавить условие if к каждой команде, сопоставленной с FooEvent, проверяя, виден ли правильный вид, и мне это не нравится. Распределение логики по командам усложняет управление ими.

Каков наилучший способ условно вызывать команды в контексте моего приложения?

1 ответ

Решение

Внутри посредника X вы можете создать прослушиватель для FooEvent. и затем на основе родительского X вы отправляете новое событие.

Или внутри A,B и C вы слушаете FooEvent, и когда вы ловите его, вы передаете его от посредника A,B или C к определенной команде.

Цель состоит в том, чтобы держать события в представлениях и поддерживать новое общение в дальнейшем.

Вы также можете использовать сигналы

Другие вопросы по тегам