考虑到以下Javascript,将MyService
对象注入myMethod
会不会更好/更惯用,以便可以注入虚假版本的MyService
进行测试?或者我错过了什么?
var myObject = {
myMethod: function() {
var myService = new MyService();
return myService.doSomething();
}
}
答案 0 :(得分:1)
依赖注入始终优先于对依赖项进行硬编码。此外,通过对接口进行编码(假设myObject实例已经获得了具有doSomething()
方法的Service对象的副本),这里可以派上用场。