서비스에 $ scope를 전달하고 다른 컨트롤러에서 사용할 수 있도록 서비스에 저장하려고합니다.
내 응용 프로그램 사용자는 UserName을 입력하고 ng-model을 통해 컨트롤러로 다시 전달할 수 있지만 해당 컨트롤러에만 제한적이며 다른 컨트롤러는 해당 범위에 액세스 할 수 없습니다.
나는 $ rootScope도 살펴 봤지만 대답이 아닙니다.
서비스에이 사용자 이름을 저장할 수있는 방법이 있으며 서비스의 API에 전달하여 걱정할 필요가 없습니다. 현재 내가이 게시물에 비슷한 일을하고있는 중이 야
Pass scope to Service on AngularJS
이 내가 내 서비스
(function() {
var gitHubApiFactory = function($http) {
var urlBase = "https://api.github.com";
var factory = {};
factory.getUserName = function(userName) {
return $http.get(urlBase + "https://stackoverflow.com/users/" + userName);
};
factory.getUserRepo = function(userName) {
return $http.get(urlBase + "https://stackoverflow.com/users/" + userName + "/repos");
};
factory.getRepoLang = function(userName,repoName) {
return $http.get(urlBase + "/repos/" + userName + "/" +repoName);
};
return factory;
};
gitHubApiFactory.$inject = ['$http'];
angular.module('gitHubApp').factory('gitHubApiFactory',gitHubApiFactory);
}());
지금까지이 나는 대신에 그것을 전달 매개 변수 (사용자 이름) 매번 통과하고 싶지 않아 서비스.
angularjs에 대한 최고의 지원에 감사드립니다.
안녕 타 라스에, 그래 당신 말이 맞아 , github 인증 된 후 userName 저장할 서비스 및 내가 잃어 버릴거야 그것의 목적은 singleton.then되고 이후로 어떻게 다른 사람이 그것을 볼 수있는 인증 된 후 내가 userName 저장할 수 있습니까? 감사합니다 – GeekOnGadgets