无味84
2021-07-20 13:24
采纳率: 89.3%
浏览 39
已结题

vue中窗口大小改变,侧边栏跟着收或缩

img
我使用的是onresize事件,但是当窗口变化的时候一直打印这个,有没有什么可以优化的呀

  • 好问题 提建议
  • 收藏

2条回答 默认 最新

  • 只为搞笑 2021-07-21 09:50
    已采纳

    如果你的侧拉栏是到了固定宽度发生改变,可以考虑使用媒体查询类来定义不同宽度范围侧拉栏的样式,是性能最好的方案。
    但是如果是动态的,只能监听onresize,可以做一个缓冲代码减少监听频次,如下

    data(){
      return {
        timer:''
      }
    },
    created(){
      window.onresize=function(){
        // 取消前一次延迟调用
        clearTimeout(this.timer);
        // 延迟200ms设置宽度,避免频繁触发判断
        this.timer = setTimeout(function(){
          // 你的处理方法
        },200);
      }
    }
    

    代码是盲写的 不一定可以复制,不过思路就是这样

    已采纳该答案
    评论
    解决 无用
    打赏 举报
  • li.siyuan 2021-07-20 13:42

    打印这个 是因为你再控制台 加了 console.log 去掉就可以了 你找找 肯定有的

    请采纳

    评论
    解决 无用
    打赏 举报

相关推荐 更多相似问题