我已经实现了一个 MXML 自定义组件,我想将参数传递给构造函数:
newUser = new userComp("name");
而不是使用 set 方法。
如果自定义组件是在 MXML 中构建的(使用initialize=myPseudoCostructor()
方法?) ,这可能吗?
或者我只能用额外的代码行来设置参数?
我已经实现了一个 MXML 自定义组件,我想将参数传递给构造函数:
newUser = new userComp("name");
而不是使用 set 方法。
如果自定义组件是在 MXML 中构建的(使用initialize=myPseudoCostructor()
方法?) ,这可能吗?
或者我只能用额外的代码行来设置参数?
我最近遇到了这个问题 - 你可以做的是创建一个返回组件的初始化函数:
在组件内部(为了论证,称为 MyComponent):
public function init(...args):MyComponent {
//Add constructor code here
return this;
}
...创建组件时,您可以像这样调用:
var myComp:MyComponent = new MyComponent().init(args);
当它返回对象时,您可以将其视为构造函数。我最近不得不使用这种方法很多,似乎是解决问题的最佳方法。
IN COMPONENT (cosa)
<fx:Declarations>
<fx:String id="name">Jon Doe</String>
</fx:Declarations>
<fx:Script>
trace("hola "+name)
</fx:Script>
<s:Label text="Hola {name}"/>
IMPLEMENT
<cosa name="Juan Perez"/>