2016-09-26 4 views
0

공장에서 얻은 결과를 보여주는 다음 예제는 서비스 &입니다. 내 지식에 따라, 공장 항상 , 객체 반환 서비스하는 동안 항상 반환 객체의 인스턴스. 여기에서 반환 된 두 객체의 차이점은 개념적으로 무엇입니까? 누군가 명확히 할 수 있습니까?반환 개체 비교 - 간단한 예제에서 서비스 대 팩토리

발췌문 (특히이 시나리오에) :

<html> 
<head> 
<script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.5.8/angular.min.js"></script> 
</head> 
<body ng-app="myApp" ng-controller="myCtrl"> 
<script> 
    //module declaration 
    var app = angular.module('myApp',[]); 
    //controller declaration 
    app.controller('myCtrl', function($scope, myFactory, myService){ 
     $scope.name = "Peter"; 
     var a = myService; 
     console.log(a); 
     var b = myFactory; 
     console.log(b); 
    }); 
    //services declaration 
    app.service('myService',function(){ 
     this.age = 15; 
    }); 
    app.factory('myFactory',function(){ 
     var obj = {}; 
     obj.country = "USA"; 
     return obj; 
    }); 
</script> 
</body> 
</html> 

결과 :

enter image description here

이미 읽기 :

AngularJS: Service vs provider vs factory

+0

'개체의 인스턴스'같은 건 없다. 이것은 생성자의 인스턴스이며 함수는 아무 것도 반환하지 않습니다. 그것은 바람직하지 않지만 생성자 함수에서 객체를 반환하는 것이 가능합니다. – estus

답변

1

Factory의 이해는 항상 객체를 반환하지만 서비스는 항상 객체의 인스턴스를 반환합니다. 당신이 게시 한 특정 html 스 니펫에 관한 질문을 명확히하기 위해 콘솔에 서비스가 생성자를 가지고 있음을 볼 수 있습니다. 그러나 생성자 자체는 생성자가 없습니다.

enter image description here