Событие изменения ориентации окна в Angular
Есть ли способ вызвать событие directionalchange в директиве AngularJS?
В настоящее время я работаю с угловой кладкой и пытаюсь обновить / обновить кладку при изменении ориентации мобильного устройства.
Я нашел это, но мне интересно, как это сделать с помощью сервиса $window внутри Angular
window.addEventListener("orientationchange", function() {
// Announce the new orientation number
console.log(window.orientation);
}, false);
3 ответа
Решение
angular.element($window).bind('orientationchange', function () {
});
Надеюсь это поможет. Прикрепите директиву как attr к телу. Протестировано с IPhone 5.
'use strict';
angular.module('appModuleNameHere')
.directive('DirPrefixNameOrientationChange', ['$rootScope',function ($state) {
return {
restrict: 'A',
replace: true,
link: function postLink($scope, element, attrs) {
element.bind('orientationchange', function () {
$state.go($state.current, {}, {reload: true});
});
}
};
}]);
Я реализовал это так:
$window.addEventListener('orientationchange', function() {
your code here
}, false);
Как вы думаете?
Комментарии приветствуются.