【问题标题】:flex pass parameter to custom componentflex 将参数传递给自定义组件
【发布时间】:2011-02-11 12:27:46
【问题描述】:
我有一个用动作脚本(无 UI)编写的自定义组件。我在库项目中存在的 mxml 文件中实例化此组件。自定义组件有一个构造函数,它接受一个参数。
该库项目用于其他一些 Web 项目,我将变量传递给此 mxml 文件。[我已将 Web 项目的源链接到库的源。]。
我的库项目中有一个静态变量,它保存项目当前对象的引用。我需要这个静态变量才能使用 mxml 文件中的属性。
我无法在自定义组件的构造函数中使用从 Web 项目发送的属性,但可以在自定义组件中存在的其他一些函数中使用该属性。
请帮帮我!
谢谢
安吉
【问题讨论】:
标签:
actionscript-3
flex3
parameters
custom-component
【解决方案1】:
如果您能够从 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
}