Werawoolf
@Werawoolf
Frontend Engineer

Как изменить URL через «otherwise» в angular + node без перезагрузки страницы?

На клиентской стороне:

app.config(['$locationProvider', '$routeProvider',
function($locationProvider, $routeProvider) {

    $routeProvider
        .when('/', {
            templateUrl: 'components/home.html',
            controller: 'homeController'
        })
        .otherwise('/');

    $locationProvider.html5Mode(true);
}]);


на серверной:

app.get('*', function(req, res, next) {
      res.redirect('/#' + req.originalUrl);
});


Но страница перезагружается, если попытаться применить, например, URL-адрес "/qwerty". Есть ли способ изменить плохой URL без перезагрузки?
  • Вопрос задан
  • 1040 просмотров
Пригласить эксперта
Ответы на вопрос 1
@Kano
Нужно подписаться на событие изменения ссылки сервисом $location и остановить выполнение события, вот так
$scope.$on('$locationChangeStart', function(event) {
       event.preventDefault();
});
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы