Мои критерии были:
- Открыть модальное из любого места в моем приложении
- Не переписывать URL, оставить как есть из перед открытием модального
- при нажатии на кнопку возврата на браузер не помню модальные состояния и возобновлять их
- не включать много вариантов в разметке, когда щ-sref используется
Я использую $ stateProvider в своем приложении angularjs для обработки маршрутизации. Мне нравится, как легко отображать модальные атрибуты атрибутов ui-sref вместе с событием onEnter в функции .state.
Проблема, с которой я сталкиваюсь, заключается в том, что я хочу иметь возможность отображать модальную верхнюю часть любой страницы в моем приложении, не перенаправляя ее на маршрут для модального всплывающего окна.
В настоящее время я использую переход для возврата к предыдущему состоянию до того, как модальный был открыт, но он грязный, и вы можете видеть, как страница меняется за модальной маской.
Кто-нибудь знает, как создать настоящие глобальные модалы с помощью $ stateProvider, или мне нужно будет запустить свой собственный модальный менеджер, чтобы справиться с ним. У меня уже есть это место для диалогов Confirmation, но это немного грязно, поскольку у меня есть много ng-кликов по всей разметке и функция $ scope.click = во многих контроллерах вместе с событиями $ on и $ broadcast/$ emit, которые я не знаю, (если я могу помочь).
UPDATE 15/10/15
При переходе к модели состояний Я также не хочу, чтобы изменить URL/STORE состояние в браузерах обратно историю.
UPDATE 15/10/15 - 30 минут после предыдущего обновления
мне удалось решить это - см ответить ниже.