angular怎么监听屏幕宽度改变

新手上路,请多包涵

如果用angular自带的监听服务
1.$scope.$watch('window.innerWidth', function() {

        console.log($window.innerWidth);
    });

2.$scope.$watch(function(){

return $window.innerWidth;

}, function(value) {

console.log(value);

});
这两种方法都有尝试,都不能实时监听浏览器宽度改变
如果用原生js再用$scope.$apply()确实可以实现
window.onresize = function () {

    $scope.$apply(function(){
      console.log($window.innerWidth)
    })
  };

但是这种方法 如果我用uiroute配置了嵌套路由的话,处于嵌套的路由页面中时,这个方法会失效。
请问各位大哥,有什么好的方法可以用angular监听浏览器宽度的改变吗?

阅读 4.9k
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
宣传栏