angularjs разрешить обещание до запуска контроллеров - PullRequest
0 голосов
/ 23 марта 2020

Я ищу способ выполнить свое обещание до того, как контроллер начнет работать. Но что бы я ни пытался, контроллер уже работает, и результат все еще ждет. Может ли кто-нибудь помочь мне: (

templateUrl: 'tag/details.html',
resolve: {
    result: function (TagResource, $route) {
        TagResource.get({ id: $route.current.params.id }).$promise.then(function (data) {
            return data
        });
    }
}

1 Ответ

3 голосов
/ 23 марта 2020

Вернуть обещание:

templateUrl: 'tag/details.html',
resolve: {
    result: function (TagResource, $route) {
        ̶T̶a̶g̶R̶e̶s̶o̶u̶r̶c̶e̶.̶g̶e̶t̶(̶{̶ ̶i̶d̶:̶ ̶$̶r̶o̶u̶t̶e̶.̶c̶u̶r̶r̶e̶n̶t̶.̶p̶a̶r̶a̶m̶s̶.̶i̶d̶ ̶}̶)̶
        return TagResource.get({ id: $route.current.params.id })
        .$promise.then(function (data) {
            return data
        });
    }
}

ЛУЧШЕ YET

Пропустить .then метод:

templateUrl: 'tag/details.html',
resolve: {
    result: function (TagResource, $route) {
        ̶T̶a̶g̶R̶e̶s̶o̶u̶r̶c̶e̶.̶g̶e̶t̶(̶{̶ ̶i̶d̶:̶ ̶$̶r̶o̶u̶t̶e̶.̶c̶u̶r̶r̶e̶n̶t̶.̶p̶a̶r̶a̶m̶s̶.̶i̶d̶ ̶}̶)̶
        return TagResource.get({ id: $route.current.params.id }).$promise;
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...