Как условно перенаправить с маршрута AngularJS - PullRequest
0 голосов
/ 28 апреля 2019

Я изменяю свой сайт и должен учитывать обратную совместимость, чтобы старые ссылки преобразовывались в новые ссылки.

У меня есть существующий маршрут (/page), который останется прежним, но я хочу проверить некоторые параметры URL-адреса и, если имеется, манипулировать URL-адресом и перенаправить на обновленную страницу.

Я понимаю, что могу сделать это в контроллере, но есть много другой логики (к лучшему или худшему), которую я не хочу запускать

Q : Могу ли я условно проверить и обновить URL-адрес для маршрута в моем $routeProvider?

angular.module('app')
    .config(function ($routeProvider) {
        $routeProvider.when('/page', function(){
            // if some old condition is found
            if ($location.search().oldParam) {
                // modify the current URL
                $location.search('newParam', 'true').replace();
                // replace with some new URL 
                $location.path('/newPage').replace();
                // Now load the new route instead
            }
        });
...