首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SwiftSuspenders不能正常工作吗?

SwiftSuspenders不能正常工作吗?
EN

Stack Overflow用户
提问于 2011-04-30 02:00:48
回答 2查看 522关注 0票数 1

我刚刚开始尝试使用AS3项目的快速吊带,但是当我尝试访问它们时,我的注入是无效的。只有当我显式地使用injector.injectInto()将其注入到应该有引用的对象中时,它才有效。但这不可能是SwiftSuspenders的最佳方法,对吧?

EN

回答 2

Stack Overflow用户

发布于 2011-05-13 03:46:29

在类构造函数中访问注入的属性不会有任何变化吗?如果是这样,请使用PostConstruct元。

代码语言:javascript
复制
public class Example
{
    [Inject] public var foo:Bar;

    public function Example()
    {
        foo.barMe(); // throws null reference error
    }

    [PostConstruct]
    public function _postConstruct():void
    {
        foo.barMe(); // OK
    }
}

PostConstruct:在注入完成上自动调用方法

依赖于自动DI的类的实例只有在DI完成后才能使用。使用PostConstruct元数据注释Injecte类中的方法会导致在所有注入完成后直接调用它们,并且使用实例是安全的。通过使用order参数: PostConstruct(order=1),可以按定义的顺序调用多个方法。

ref [1]

票数 0
EN

Stack Overflow用户

发布于 2013-07-03 01:16:22

您确实需要在每个需要依赖项的对象上调用injectInto。绕过这一步的方法是将该步骤抽象到一个依赖注入容器("DI容器“)中,该容器为您管理该步骤。MVC toolkit,Robotlegs,通过它自己的自动依赖注入系统实现了这一点。

以下是"ActionScript开发人员机器人腿指南“的摘录:

自动化DI容器背后的意图是从应用程序本身抽象出依赖项的实现。本质上,我们完全拆分了这项工作,这样应用程序代码就不再需要做这件事了,而是让第三方-- DI容器--来完成它。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5835602

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档