В шаблоне модели представления может просматривать конкретную логику проживать в представлении?

В настоящее время я использую RobotLegs с шаблоном Presentation Model для разработки проекта Flex 4. Я понимаю, что вся бизнес-логика, связанная с представлением, находится в модели представления, связанной с этим представлением, однако я не совсем понимаю, когда речь идет о представлении определенной логики.

Например, у меня есть индикатор, который нужно позиционировать относительно элементов списка в зависимости от того, какой элемент списка выбран. Допустимо ли в шаблоне презентации поместить логику, которая будет позиционировать индикатор в представлении, и просто запустить эту логику в ответ на изменение свойства selectedIndex в модели представления?

Причина, по которой я рассматриваю это, заключается в том, что, поскольку модель представления не имеет ссылки на представление, трудно найти идеальное решение для манипулирования компонентами представления.

1 ответ

Решение

Задайте себе вопрос: если бы вам пришлось использовать одну и ту же модель представления с представлением, которое выглядело иначе (например, мобильное представление), вам все равно нужно было бы обработать это, и не могли бы вы абстрагировать его достаточно, чтобы обрабатывать его так же, как и ВЕЧЕРА?

Для меня это звучит так, как будто вы перемещаете индикатор относительно itemRenderer, что говорит о том, что вы можете захотеть иметь какую-то ссылку на рендерер или его координаты в PM (var displayIsRelativeTo:InteractiveObject или var displayIsRelativeTo:Rect). Вы можете даже хотеть иметь другую переменную, которая описывает, как это относительно этого объекта (выше, ниже, слева, справа).

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