Привет всем) Мне нужна помощь в понимании рамки Cairngorm для flex.flex cairngorm addComand не работает
Я кодирую простой слайдер приложения. У меня есть основной класс, в котором у меня есть тег
<fx:Declarations>
<control:AppController id="appController" />
</fx:Declarations>
себя Класс AppController расширяет FrontController с функцией конструктора:
public function AppController()
{
addCommand(SliderEvent.BUILD, SliderBuildCommand);
addCommand(SliderEvent.TRANSITION, SliderTransitionCommand);
}
и, наконец, код класса SliderBuildCommand:
public function SliderBuildCommand(){}
public function execute(event:CairngormEvent):void
{
config.loadSlides(this);
}
К сожалению , в отладке я вижу, что добавление команды не сработало. Это можно увидеть, если установить точку останова в строке «config.loadSlides (this)». Однако команда (addCommand) обрабатывается. Любая идея, почему это происходит? Может быть, я ноб, и я не вижу очевидного :)
Прошло более 5 лет, так как я в последний раз использовал Cairngorm (это Кэрнгорм 2 верно?) ... Но, чтобы получить класс команды, чтобы запустить его 'выполнить()' метод, вы должны отправить вам посылку связанное событие где-то. Вы это делаете? –
Хм, не уверен в версии рамки .. Я думал, что cairngorm делает это автоматически. И в каком классе это должно быть сделано? – Creativcheck
Существует большая разница между Cairngorm 2 (реальная структура MVC) и Cairngorm 3 (более набор рекомендаций для использования различных, более современных, MVC-фреймворков). Тот факт, что вы называете «фронт-контроллер», звучит как старый Cairngorm 2. Если я правильно помню, в Cairngorm 2 вам пришлось отправлять события (например, «SliderEvent.Build») на «автобус событий cairngorm» (событие AKA Cairngorm Диспетчер или что-то в этом роде). Google ответит на все это за вас ... С тех пор я слишком долго это использовал. –