teddy1004
2013-12-12 10:31:49 +08:00
记得以前看过一个博客里面说到 service 和 factory 的异同,是看 AngularJS 的源代码
翻了一下,下面分别是 factory 和 service 的代码
function factory (name, factoryFn) {
return provider(name, { $get: factoryFn });
}
function service(name, constructor) {
return factory(name, ['$injector', function($injector) {
return $injector.instantiate(constructor);
}]);
}
得出的结论是:service 就是调用了 $injector 注入器的 factory,简化数据共享的实现。factory 可以有自己的依赖,注入其他服务。service 貌似不行。