Vue3 根据窗口的大小动态调整列表的长度

在当今的Web开发中,页面自适应不同设备的屏幕尺寸是一个至关重要的需求。Vue.js,作为一个流行的前端框架,提供了强大的响应式系统,使得开发者可以轻松地实现这一功能。本文将深入探讨如何使用Vue.js来实时监听浏览器窗口尺寸的变化,并根据这些变化动态调整页面布局。

~script:

javascript 复制代码
const windowWidth = ref(0);
const windowHeight = ref(0);
const tableOuter = ref();
  
const updateWindowSize = () => {
  windowWidth.value = window.innerWidth;
  windowHeight.value = window.innerHeight;
  page.pageSize =
    windowWidth.value > 1200
      ? Math.floor(
          (windowHeight.value -
            (isMobile ? 0 : tableOuter?.value.getBoundingClientRect().top) -
            110) /
            33
        )
      : 10;
	  
  await getList();//获取你的列表
};

onMounted(async () => {
  updateWindowSize();
  window.addEventListener("resize", updateWindowSize);//如果需要实时监听窗口的变化调整列表,就加上
  await getList();//获取你的列表
});

//如果需要实时监听窗口的变化调整列表,就加上如下代码
onActivated(async () => {
  await getList();
  window.addEventListener("resize", updateWindowSize);
});

onDeactivated(() => {
  window.removeEventListener("resize", updateWindowSize);
});

~template

javascript 复制代码
<template>
	<div ref="tableOuter">
		<el-table 
		:data="list"
		:height="autoHeight"
		size="small">
		</el-table>
	</div>
<template>
相关推荐
码农小旋风几秒前
大语言模型基础
开发语言·人工智能·语言模型·自然语言处理·chatgpt·claude
moMo几秒前
前后端模块化分离,web盒子布局思维
前端·后端
前端繁华如梦3 分钟前
不写模型文件,用代码「捏」出 3D 世界:Vue3 + Three.js 程序化资产生成实战
前端·vue.js
灰子学技术6 分钟前
Envoy OAuth2 过滤器功能实现分析
运维·服务器·前端·网络
凤山老林10 分钟前
68-Java ConcurrentHashMap
java·开发语言
覆东流10 分钟前
Python变量与数值类型
开发语言·后端·python
LCG元12 分钟前
MySQL慢查询分析与索引调优:从故障诊断到性能翻倍的进阶之路
android·前端·mysql
Cthy_hy15 分钟前
Python 算法竞赛:快速IO+字符串常用方法一站式整理
开发语言·python·算法
jzlhll12329 分钟前
android kotlin Flow:distinctUntilChangedBy + stateIn 的坑
android·开发语言·kotlin