Javascript-форум (https://javascript.ru/forum/)
-   Angular.js (https://javascript.ru/forum/angular/)
-   -   Получить сервис Angular во внешней функции (https://javascript.ru/forum/angular/45768-poluchit-servis-angular-vo-vneshnejj-funkcii.html)

Shasoft 15.03.2014 22:53

Получить сервис Angular во внешней функции
 
Пытаюсь прикрутить сервис uLogin в Angular. Делаю таким образом
myApp.directive("uLogin", function(){
        return function(scope, element, iAttrs) {
            // Генерирую уникальный идентификатор
			var id =  "id"+Math.floor(Math.random() * (1000000 + 1));
			// Присваиваю его элементу
			element.attr("id",id);
			// Вызываю функцию uLogin для инициализации
			uLogin.customInit(id);
        }
    });
function uLoginCallback(token)
{
	console.log("uLogin-token",token);
}
В результате в uLoginCallback приходит token, который мне нужно проверить на корректность. Для этого нужно сделать запрос на сервер. Но как получить сервис $http в этой внешней функции? И возможно ли это вообще?

Shitbox2 16.03.2014 15:49

А так его нельзя передать разве?
myApp.directive("uLogin", function($http){

Shasoft 16.03.2014 16:50

Так его можно передать в ДИРЕКТИВУ. А мне то нужен этот сервис в функции uLoginCallback.

nerv_ 16.03.2014 16:58

var $storage = angular.injector(['ng']).get('$storage');

пожалуйста

Shasoft 16.03.2014 18:48

Спасибо

Shasoft 18.03.2014 09:16

Вот это работает
var $http=angular.injector(['ng']).get('$http');

А вот это нет :(
var $location=angular.injector(['ng']).get('$location');


Часовой пояс GMT +3, время: 06:44.