Actionscript 3 欧芹注射液
是否可以在flex应用程序中使用parsley框架注入方法Actionscript 3 欧芹注射液,actionscript-3,apache-flex,flex4,cairngorm,parsley,Actionscript 3,Apache Flex,Flex4,Cairngorm,Parsley,是否可以在flex应用程序中使用parsley框架注入方法 我可以注入类本身,但是否可以注入方法。您可以在任意数量的方法上放置[inject]元数据标记: package com.bookstore.actions { class LoginAction { private var service:LoginService; private var manager:UserManager; [Inject] public function init
我可以注入类本身,但是否可以注入方法。您可以在任意数量的方法上放置[inject]元数据标记:
package com.bookstore.actions
{
class LoginAction
{
private var service:LoginService;
private var manager:UserManager;
[Inject]
public function init (service:LoginService, manager:UserManager = null) : void
{
this.service = service;
this.manager = manager;
}
}
}
与构造函数注入一样,Parsley将识别方法参数是否可选,并相应地将依赖项视为可选的或必需的。将按类型选择要注入的对象,因此您应该确保在配置中最多包含一个具有匹配类型的对象。对于方法注入,MXML配置没有限制,因此与构造函数注入相比,您还可以使用简单的MXML标记将对象添加到容器中
参考资料
既然可以同时注入类和简单属性,我不明白为什么不能注入
函数引用。请注意,这正是Parsley所做的,它是[MessageDispatcher]
元数据。如何使用其他方法来实现这一点,可能在欧芹文档中有所介绍。您可以指定您正在使用的欧芹的哪个版本,然后可能有比我更开明的人可以帮助您。进一步检查后,您可能可以使用“属性注入”,其中所讨论的属性是函数
。但是,您不能按类型注入此属性,您必须使用ID来注入它。“按类型注入”方式不起作用,因为所有函数都是类型函数
,并且Parsley无法知道应该将哪个函数注入属性。