Я использую государственную маршрутизацию (Angular UI Router v0.2.7) в проекте и ищу способ получить текущее состояние (имя) из заданной строки URL.
Что-то вроде:
$state.get([urlString]) returns stateName:String or state:Object
Мне нужен этот метод, чтобы проверить, существует ли какое-либо состояние для заданного URL-адреса, потому что не все URL-адреса отображаются в состояние в моем проекте. Используя Play Framework в качестве бэкэнд, некоторые URL-адреса (например, форма входа) не отображаются в состояние, потому что они используют разные шаблоны, а затем Angular (основную) часть моего приложения. Для тех страниц "не- Angular" (т.е. Не охваченных состоянием) я бы сделал перезагрузку. Чтобы определить URL-адреса, не охватываемые государством, мне нужен метод, упомянутый выше. Планируется сделать это следующим образом:
$rootScope.$watch(function() { return $location.path(); }, function(newUrl, oldUrl) {
if(newUrl !== oldUrl) {
if (!$state.get(newUrl)) {
$window.location.assign(newValue);
}
}
}
Уже проверен document, но такого метода нет.
Любые идеи?