繁体   English   中英

XPCOM中的依赖注入

[英]Dependency Injection in XPCOM

我的XPCOM组件之一利用了其他XPCOM组件。 在测试时,我发现它的依赖项繁琐。 然后,我想到了使用依赖注入在构造函数中传入其他组件。 我没有成功。 是否可以将其他组件的引用传递到构造函数中?

 var _foo = Components.classes["@foo.com/foo;1"].createInstance(bar);
 this.foo = _foo.QueryInterface(Components.interfaces.IFoo);

例如,foo组件需要bar。 我可以通过foo的构造函数传入bar吗? 我尝试了上面的方法,但是没有用。

是否可以将其他组件的引用传递到构造函数中?

createInstance的参数是一个接口; .createInstance(interface).createInstance().QueryInterface(interface)的快捷方式。

问题的答案在于您未在问题中描述的区域-最有可能您不需要从“构造函数”访问其他组件,或者偶然发现了可以解决的问题,而是“麻烦的cos依赖项”,然后继续。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM