Я нахожу, что router.isActive возвращает false в любое время, когда вторичный маршрут открыт.
Является router.isActive подходящим для проверки 'am я on route (x)?' (например, страница платежей) - независимо от hashstates, параметров запроса и вторичных маршрутов.
Должен ли router.isActive быть правильным сервисом/вызовом, чтобы вывести это? Или он предназначен для чего-то более простого. Есть ли альтернатива? Должен ли написать мой собственный сервис?
например:.
- Когда включено
/second,router.isActive('second', true)=== true- (хорошо)
- Когда включено
second(modal:my-modal),router.isActive('second', true)=== false- Проблема: Теперь эта функция больше не помогает определить, находится ли я на второй странице
- Когда включено
/second,router.isActive('', false)=== true. (неточные соответствия возвращают истинные родительские/дочерние состояния
Я создал доказательство концепции plnkr, для более легкого тестирования:
