Показать сообщение отдельно
  #1 (permalink)  
Старый 21.08.2015, 12:03
Аспирант
Отправить личное сообщение для A1x1On2015 Посмотреть профиль Найти все сообщения от A1x1On2015
 
Регистрация: 24.02.2015
Сообщений: 37

Функция factory из другого контролера
Здравствуйте,
Мой код:
var ModuleManager = angular.module("AngularManager", ["ngRoute"]);

ModuleManager.controller("OpenTask", function ($scope, OpenTaskService) {

        $scope.ClickedTask = function (TaskId) {
            key = TaskId;

            $(".RemoveTask").fadeIn();
            $(".saveTask").val("Сохранить");

            var LIKEFUNCTION = OpenTaskService.GetTask().then(function (t) {
                $scope.Task = t.data;
                if ($scope.Task[3] !== "1") {
                    $(".finishtag").fadeIn();
                    $(".Cancelfinishtag").fadeOut();
                } else {
                    $(".finishtag").fadeOut();
                    $(".Cancelfinishtag").fadeIn();
                }
}

ModuleManager.factory("OpenTaskService", function ($http) {
        var fac2 = {};
        fac2.GetTask = function () {
            return $http({ method: 'GET', url: "/Manager/OpenTask/", params: { 'TaskId': key } });
        }
        return fac2;
    });


Я хочу из другого контроллера вызвать это OpenTaskService.GetTask() в идеале:

ModuleManager.controller("TaskFrom", function ($scope, TService) {

         $scope.EndActTask = function (obj) {
            idTask = obj.currentTarget.id;
            TService.EndActTask().then(function (d) {
                $scope.Tags = d.data;
                $("i#" + idTask).children(".d-status").html("<b>Cтатус: </b>Завершен");
                LIKEFUNCTION // тут вызвать сервис точнее не сам сервис, а функцию которая его реализует в контроллере, как то так можно придумать??
            }, function () {
                alert("Fail of getting tags");
            });
        }


        }
Ответить с цитированием