У меня есть приложение, в котором я должен разрешить пользователям без регистрации получать доступ к некоторым страницам, например, забыть форму пароля, регистрацию и т.д.
if(!Authentication.isLoggedIn()){
if($location.path() === '/thanks'){
// Allow
} else {
// Redirect to login
$location.path('/login');
}
}
Я использую ngRoute, и у меня есть маршрут с параметром в нем (/lostpassword/: токен), но я не могу найти способ правильно его сравнить, чтобы позволить ему так же, как я могу/спасибо
Поэтому, чтобы уточнить, я не ищу значение: токен, я просто хочу сказать, когда просматривается маркер /lostpassword/: токен.
Я действительно новичок в угловой, и я надеюсь, что это всего лишь небольшая проблема синтаксиса. Любая помощь будет оценена по достоинству.
Если вы хотите узнать, содержит ли URL ключевое слово, которое вы можете сделать:
var path = $location.path();
if (path.split('/').indexOf('some') > -1){
// do something
}
РЕДАКТИРОВАТЬ
Вы также можете использовать угловой маршрутизатор, который может получить шаблон URL. это предпочтительный способ обработки маршрутов внутри вашего приложения.