[英]AngularJS Dependency Injection
我是angularjs的初学者,我开始通过他们的教程学习,但是当涉及到依赖注入时,我不太明白这是什么意思
function SomeClass(greeter) {
this.greeter = greeter;
}
SomeClass.prototype.doSomething = function(name) {
this.greeter.greet(name);
}
在上面的例子中,SomeClass不关心创建或定位greeter依赖关系,它只是在实例化时交给了greeter。
这是可取的, 但它承担了对构造SomeClass的代码的依赖的责任。
粗体句的实际含义是什么?
“构造SomeClass的代码”,这是否意味着函数SomeClass(greeter) ?
谢谢大家的建议
不, 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,该部分完全无关紧要。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.