параметр гибкой передачи в пользовательский компонент - PullRequest
1 голос
/ 11 февраля 2011

У меня есть пользовательский компонент, написанный в сценарии действия (без пользовательского интерфейса). Я создаю экземпляр этого компонента в файле MXML, который присутствует в проекте библиотеки. У пользовательского компонента есть конструктор, который принимает один аргумент.

Проект библиотеки используется в каком-то другом веб-проекте, откуда я передаю переменную в этот mxml-файл. [Я связал источник веб-проекта с источником библиотеки.]

У меня есть статическая переменная в моем проекте библиотеки, которая содержит ссылку на текущий объект проекта. Мне нужна эта статическая переменная, чтобы использовать свойства, присутствующие в файле mxml.

Я не могу использовать свойство, отправленное из веб-проекта в конструкторе пользовательского компонента, но могу использовать то же самое в некоторых других функциях, присутствующих в пользовательском компоненте.

Пожалуйста, помогите мне!

Спасибо

* 1013 Anji *

1 Ответ

2 голосов
/ 12 февраля 2011

, если вы можете получить нужное значение из mxml: mxml код:

<local:MyComponent varname="value"/>

Код AS3:

private var _varname:Type;
public function MyComponent(){
    //empty constructor
}
public function set varname(newVal: Type):void{
    _varname = newVal;
    //constructor code here
}

иначе вам нужно будет найти событие MyComponent, которое запускается, когда нужная переменная уже доступна(например, CREATION_COMPLETE): Код AS3:

public function MyComponent() {
    addEventListener(FlexEvent.CREATION_COMPLETE, onCreated);
}

private function onCreated(e:FlexEvent):void {
    //access of the variable and constructor code
}
...