У меня есть веб-приложение, которое включает в себя мини-SPA, который в основном представляет собой очень сложный рабочий лист. Этот рабочий лист может содержать десятки страниц, каждый из которых содержит десятки полей и ссылки на другие части рабочего листа. В настоящее время архитектура с помощью AngularJS, и каждый щелчок в пределах рабочей таблицы навигации или экранных ссылок вызывает функцию (пример loadWorksheetPage (x)). Эти функции в контроллере вызовут службу REST и загружают правильную информацию о странице.Архитектура маршрутизации AngularJS, взаимодействие страниц
Недостаток, который у меня есть сейчас, заключается в том, что все происходит на одном URL-адресе. Пользователь может потратить много времени на разные страницы на одном листе. Возможно, они ожидают, что кнопка «Назад» будет работать, но в настоящее время она перенесет их на последнюю страницу, которую они посетили до рабочего листа.
Каковы некоторые рекомендации по применению этого типа? Это мини-SPA, поэтому я не хочу, чтобы angularjs обрабатывали всю маршрутизацию. Я мог бы попытаться обработать маршрутизацию на листе, который я предполагаю (рабочий лист/5/page/7?). Это может быть довольно большим изменением, хотя, и мне придется сначала ударить по MVC-маршруту (рабочий лист/5), за которым следует маршрут angularjs (/ page/7). Не уверен, что это возможно. Я думаю, что когда пользователь нажимает кнопку для загрузки другой страницы на листе, я могу назвать API, который сохраняет историю страниц. Затем я мог бы прервать кнопку «Назад», чтобы перейти к правильной странице.
Я изучаю UI-маршрутизатор и действительно нравлюсь это. –