Мое приложение использует RubyonRails и Angular. Моя проблема:
когда im перемещается по страницам вручную - ввод URL и нажатие "Enter" (маршруты маршрутов), например, посещение /welcome,/about,/home,/posts/98 и нажатие кнопок браузера назад и вперед позволяет легко находить все эти страницы. Затем, когда я нажимаю ссылки на эти страницы (работа с угловыми маршрутами), я могу вернуться назад и вперед в браузере. Но если im посещение вручную /приветствуется, а затем нажмите "about", "home" - из дома я могу вернуться к "about", но нажимаю на странице "about" страницы im get /welcome с пустым ng-view div.
$rootScope.$on('$viewContentLoaded', function() {
console.log($window.history.state);
});
При посещении страницы вручную $ window.history.state возвращает текущий url (такой же, как $ location.absUrl();). Нажимая ссылки $ window.history.state, возвращает null.
Мне нужно, чтобы щелкнуть назад или переслать любой маршрут в $ window.history, независимо от того, была ли страница посещена вручную (маршруты маршрутов) или путем нажатия ссылок (угловых маршрутов). Будем рады услышать любые идеи.
пример угловых маршрутов:
.when('/welcome', {templateUrl: '/angular_templates/welcome_process',controller: 'WelcomeController'})
.when('/about', {templateUrl: '/angular_templates/guidelines', controller: 'AboutCtrl'})
маршруты рельсов:
get 'welcome' => 'home#welcome_process', as: :welcome
get 'about' => 'home#guidelines', as: :guidelines
Проблема была решена путем удаления драгоценного камня "turbolinks". (из Gemfile и сделано "пучок чистой --force").