我是天使语的初学者,我通过他们的教程开始学习,但是当谈到依赖注入时,我不太明白它意味着什么。
function SomeClass(greeter) {
this.greeter = greeter;
}
SomeClass.prototype.doSomething = function(name) {
this.greeter.greet(name);
}在上面的示例中,SomeClass不关心创建或定位greeter依赖项,它只是在实例化该依赖项时传递给greeter。
这是可取的,,但它负责获取构造SomeClass.的代码的依赖关系。
黑体句到底是什么意思?
“构造SomeClass的代码”,这是否意味着函数SomeClass(greeter)
谢谢大家的建议
发布于 2014-07-15 05:42:08
不,function SomeClass(greeter)是一个构造函数。
构造SomeClass的代码在这个上下文中是任何代码所做的(类似于
var greeter = new Greeter();
var someInstance = new SomeClass(greeter);这通常位于DI框架代码的某个位置。
下面的部分只是在Javascript中在类上声明成员函数的几种方法之一。
SomeClass.prototype.doSomething = function(name) {
this.greeter.greet(name);
}所做的就是确保SomeClass的每个实例都有一个doSomething函数。为了解释DI,这部分是完全无关的。
https://stackoverflow.com/questions/24750512
复制相似问题