![]() |
|
||||||||||
|
|||||
|
Регистрация: Feb 2010
Сообщений: 56
|
Подобные темы поднимались ранее. Знаю.
Ситуация: Есть кастумные компоненты. Третий вызывается во втором, второй - в первом. В первом компоненте прописан RemoteObject со своими методами. Цель: Отослать с помощью RemoteObject переменные с третьего компонента. Варианты: 1) каким-то образом передать переменные с третьего компонента в первый и там уже отправить через RemoteObject по адресу (передавать переменные кроме как диспатчить события в дочернем компоненте а в родительском отлавливать и присваивать переменные с дочернего компонента переменным родительского в голову толковее пока что не лезит). 2) Описать во втором кастумном компоненте еще один аналогичный RemoteObject и передавать данные уже ему (в третьем компоненте создание RemoteObject исключено т.к. таких третьих еще несколько...). 3) Вариант, который пока что я не вижу. Можно ли как-то перепрыгнуть через второй компонент и с первого отловить событие третьего и взять у него переменные? Что можете сказать по этому поводу? |
|
|||||
|
Регистрация: Nov 2009
Сообщений: 64
|
1) "каким-то образом передать переменные" можно event-ом. у вас вложенные компоненты, проблем не будет.
2) смотрите, если вы обьявите public переменные для компонента, то их можно связывать назквозь. [Bindable] public var num:Number = 0; вот это в компоненте можно привязывать к другому компоненту. component2.num = component1.num; component3.num = component2.num; все. ваша num из 1-го компонента в 3-ем. обратно так же. а вот так вы можете отслеживать изменения public переменных для вложенного компонента: if (ChangeWatcher.canWatch(component2,'num')) ChangeWatcher.watch(component2,'num',updData); private function updData(event:Event):void { и тут чет делаем. во |
|
|||||
|
Регистрация: Feb 2010
Сообщений: 56
|
Т.е. можно с 1го компонента добраться до переменной с 3го компонента через промежуточную переменную 2го компонента... Идея хорошая. Про ChangeWatcher еще не слыхал... Распишите пожалуйста по-подробнее по поводу
Цитата:
В общем, решил задачу через переписывание событий и присваивание переменных одного компонента другому. в 3м генерирую событие и отлавливаю во втором, попутно присваиваю переменной с 2м компоненте переменную с 3го... Аналогично поступаю с 1м компонентом... Но все таки что это за ChangeWatcher, распишите, пожалуйста! Последний раз редактировалось GrMerlin; 18.04.2010 в 02:29. |
|
|||||
|
Регистрация: Feb 2010
Сообщений: 56
|
А возможно ли как-то обратится с дочернего компонента к родительскому без dispatchEvent? Что-то вроде как напрямую.
|
![]() |
![]() |
Часовой пояс GMT +4, время: 15:35. |
|
|
« Предыдущая тема | Следующая тема » |
|
|