Как загрузить маршрут только после разрешения запроса (а не когда пользователь вводит путь к браузеру) - PullRequest
0 голосов
/ 15 апреля 2019

Я сбросил пароль в моем приложении. Если все работает нормально, пользователь должен увидеть новую страницу с информацией о проверке входящих сообщений. Я могу это сделать, я просто установил новый маршрут:

    .module('auth')
    .config(function ($stateProvider) {
        $stateProvider
            .state('success', {
                url: '/success',
                templateUrl: 'app/authentication/success.html',
                data: {
                    hasPublicAccess: true
                }

//if I don't set hasPublicAccess to true, I'm redirect to home page 


            })

and in my reset password I have after resolved: 

                .finally(function () {
                     $state.go('success');
                });


И это, конечно, работает нормально, но у меня есть сомнения, потому что, когда я набираю этот путь к браузеру как "/ success", я вижу эту страницу, и для меня это не имеет смысла. Где я должен поставить условие, что я могу открыть этот маршрут только после разрешения запроса?

1 Ответ

0 голосов
/ 15 апреля 2019

$stateProvider.state(...) имеет resolve свойство.Там вы можете реализовать все проверки / загрузки, которые необходимо выполнить перед загрузкой состояния.(например https://medium.com/opinionated-angularjs/advanced-routing-and-resolves-a2fcbf874a1c)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...