vue はページの幅と高さの変更のリアルタイム監視をどのように実装しますか

Vue はページの幅と高さを監視します

使用される主なテクノロジー: 監視を監視す​​る
、手間をかけずにコードに直接アクセスし、自分で調査する

 <template>
  <div class="rightContainer">
    <h1>监听页面宽高</h1>
    <h2>当前整个页面宽度{
    
    {
    
     windowWidth }}px</h2>
    <h2>当前整个页面高度{
    
    {
    
     windowHeight }}px</h2>
  </div>
</template>
<script>
export default {
    
    
  name: 'WatchsHW',
  data() {
    
    
    return {
    
    
      windowHeight: document.body.clientHeight,
      windowWidth: document.body.clientWidth
    }
  },
  watch: {
    
    
    // 监听页面高度
    windowHeight(val) {
    
    
      console.log('实时屏幕高度:', val, this.windowHeight)
    },
    // 监听页面宽度
    windowWidth(val) {
    
    
      console.log('实时屏幕宽度:', val, this.windowHeight)
    }

  },

  mounted() {
    
    
    // <!--把window.onresize事件挂在到mounted函数上-->
    window.onresize = () => {
    
    
      return (() => {
    
    
        this.windowHeight = document.documentElement.clientHeight // 高
        this.windowWidth = document.documentElement.clientWidth // 宽
      })()
    }
  },

  methods: {
    
    

  }
}
</script>

<style lang="scss" scoped>
.rightContainer{
    
    
  width: 100%;
  text-align: center;
  overflow: hidden;
}
</style>


おすすめ

転載: blog.csdn.net/weixin_45357661/article/details/129143756