Показать сообщение отдельно
  #1 (permalink)  
Старый 20.10.2015, 00:05
Аспирант
Отправить личное сообщение для Romaboy Посмотреть профиль Найти все сообщения от Romaboy
 
Регистрация: 29.05.2013
Сообщений: 61

Помогите в роутинге сделать редирект
Делаю бекенд для проекта на ангуляре, но ангуляр впервые вижу и подсказки прошу! Логика такая: если человек (переменная current_user) войден, то его должно со страниц входа, регистрации, забыл пароль и прочих таких редиректить на основную страницу, и наоборот: если не авторизован - то на вход. Роутингов много, 80, в каждом я прописал такой резолв:
resolve: {
                      signed_in: ['$location', function ($location) {
                        if(!current_user){$location.path('/access/signin')}
                      }]
                  }

И это сработало!
Теперь если у него не все данные заполнены, то должно не пускать со страницы профиля, пока не заполнит:
resolve: {
                      signed_in: ['$location', function ($location) {
                        if(!current_user){
                          $location.path('/access/signin')
                        } else if(current_user.mobile == '') {
                          $location.path('/app/page/profile')
                        }
                      }]
                  }

Так как все нужное заполнено во время регистрации, то нужен только мобильный. И это не работает! Редиректит только если по адресу перейти, а потом при кликах игнорирует. Если console.log рядом с $location.path поставить, то логит, но ангуляр игнорирует. return false не помог.
Ответить с цитированием