vue3监听浏览器尺寸变化

1.在data中定义一个变量,用于记录屏幕尺寸;

data(){
    return{
        screenWidth: null, 
    }
}

且做好定义为 null

2.使用 window.onresize 方法获取屏幕尺寸;

 created() {
    this.screenWidth = document.body.clientWidth
 
    window.onresize = () => {
      return (() => {
        this.screenWidth = document.body.clientWidth
      })()
    }
  },

需要在 created() 中

3.使用 watch 方法即可实时监听屏幕尺寸;

watch: {
    screenWidth: {
      handler: function (val) {
        if (val < 900) {
          console.log(val+'屏幕宽度小于900px')
        } else {
          console.log(val+'屏幕宽度大于900px')
        }
      },
      immediate: true,
      deep:true
    },
  }

搞定!

你可能感兴趣的:(前端,javascript,vue.js)