0

У меня есть этот пример: http://codepen.io/poliveira89/pen/VeZLJX/Правильно обрабатывать Ориентация экрана/устройства

Один этот пример, у меня есть <ion-nav-view></ion-nav-view>, где я вставить Tab View с 2 вкладок (Главная и О) с вложенными видом и вложенными состояниями, а также ,

Основное внимание уделяется: ориентация экрана/устройства и динамическое переупорядочение содержимого для портретной и ландшафтной ориентации.

На вкладке «Главная» - это то, что я «притворяюсь» для достижения => обновить вид (HTML) относительно изменений моделей после поворота экрана. Что явно не работает на эмуляторе и реальном устройстве.

Я дублировал пример на вкладке «О программе», потому что на вкладке «Главная» не работает, но я немного изменил код. Я попробовал некоторый «обновить» триггер с помощью кнопки (ng-click) и $ timeout с помощью оповещения. И когда я нажимаю кнопку «Просмотр», обновляйте HTML с новыми значениями на модели.

Примечание: Я попытался с другими триггерами - $http, $interval ...

Я думал, что может быть что-то связано с "Кэш" на NavView, как это:

.state('tabs.home', { 
    url: "/home", 
    cache: false, 
    views: { 
    'home-tab': { 
     templateUrl: "templates/home.html", 
     controller: 'HomeCtrl' 
    } 
    } 
}) 

Но , после того как я отключил его, ничего не изменилось и все еще не работает.

PS: Экран Вращение/Ориентация прослушивателя работает, на эмуляторе и на реальном устройстве, я отлаживал консольные сообщения.

Что может работать неправильно на угловом или ионном? Или почему только обновляет представление после триггеров?

ответ

1

Это потому, что вы обновляете $ scope вне цикла Angular digest.

Try:

$scope.$apply(function() { 
    $scope.orientation = $window.orientation; 
}); 
Смежные вопросы