2015-12-14 3 views
0

Когда пользователь потерял пароль, электронное письмо отправляется в его аккаунт по URL-адресу. Я хочу, чтобы страница, управляющая паролем сброса, загружается только в том случае, если у url есть параметр. Im использует угловой.Угловое перенаправление, когда URL не имеет параметров

Например:

, если пользователь переходит на http://example.com/reset_password/A232Ddade
загружает страницу reset_password/reset_password.html обычно

но

, если пользователь переходит на http://example.com/reset_password/ перенаправлять http://example.com/index.html

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

Чтобы это произошло, я должен использовать некоторую функцию инициализации, прочитать параметр и, если он присутствует, использовать его или если он не перенаправлен на страницу индекса? например

//At the top of the controller 
var init = function() { 
    //check if there is query in url 
    //and redirect if not 
}; 
//and fire it after definition 
init(); 

Или Могу ли я использовать модуль ui-router?

Спасибо.

+0

Кажется немного «случайным», что вы сказали ... угловой сильный со SPA (одностраничное приложение), почему вы не идете с этим? – Gianmarco

+0

Потому что URL-адрес получен из электронного письма, которое пользователи нажимают. Я не хочу получать доступ из меню. –

+0

, если вы не поместите эту ссылку в меню, тогда нет проблем – Gianmarco

ответ

1

Это выглядит как стандартного использование $routeProvider

app.config(['$routeProvider', function($routeProvider) { 
    $routeProvider. 
      when('/reset_password/:param', {templateUrl: 'pageToReset.html', controller: ResetLogicCtrl}). 
      when('/reset_password/', {templateUrl: 'index.html', controller: IndexCtrl}). 
      otherwise({redirectTo: '/'}); 
}]); 
0

Вы можете сделать это с Resolve, на вашем пути. Возьмите параметр и получите пользователя с ним, если нет пользователя, или если параметр является фальшивым значением, перенаправляйте туда, где хотите. Таким образом, ваш контроллер получает необходимые данные или перенаправляет их.

+0

, но в случае, если параметр не существует, я вызову WS и у него будет стоимость. –

Смежные вопросы