У меня есть простое требование, когда из нескольких страниц у меня есть одна страница настроек в приложении Ionic, где я разрешаю пользователю переключать одни данные (например, язык), которые поддерживаются в LocalStorage в приложении (через фабрику).
Этот "язык" используется во всех представлениях (контроллерах).
У меня есть кнопка "Назад" в представлении, но когда пользователь меняет "язык" на странице "Настройки" (я обновляю LocalStorage) и хочу вернуться через кнопку "Назад назад" к представлению предварительного просмотра, изменение не появляется после возврата.
"Предыдущий вид" использует LocalStorage.Language для извлечения данных
Кнопка "Назад" использует следующий код:
$scope.goBack = function() {
window.history.back();
}
Может ли кто-нибудь помочь здесь или обходное решение для этого возможно.
Ионные кеширует представления в текущей истории навигации. Чтобы обновлять представление каждый раз, когда вы приходите к просмотру, вы должны использовать $ionicView
вызовы $ionicView
жизненного цикла, такие как .enter
, .beforeEnter
и т.д. Код, написанный как часть этих обратных вызовов, выполняется каждый раз, даже если представление было кэшировано:
$scope.$on('$ionicView.enter', function() {
// Get your settings data here to reflect it on page everytime
})
Подробнее см.: http://ionicframework.com/docs/api/directive/ionView/