Vue3中监听页面窗体大小改变

<template>
	<div class="container">
		<h1> 测量数据</h1>
		<hr>
		<!-- -->
		<div class="plugins-tips">
			<el-row>
				<el-date-picker v-model="QueryDate" type="date" placeholder="Pick a day" :size="size" />

				<el-button type="primary" @click="QueryGlueMeasurement()">
					查询
				</el-button>
				<el-button type="primary" @click="ToExcel()">
					导出excel
				</el-button> 
			</el-row>
			<div> 
			</div>
			<br>
			<br>
			<br>
			<br>
			<br>
		</div>
	</div>
</template>

<script setup lang="ts" name="laserParameter">
import { ref, reactive, onMounted, getCurrentInstance, watch, onUnmounted } from 'vue'
import { global_const } from '../../globalconst'
import axios from 'axios'
import dateFormat from '../../globalFun'
import XEUtils from 'xe-utils'
import { ElMessage } from 'element-plus' 
const QueryDate = ref('')
const TableHeight = ref('400')

const screenWidth = ref(window.innerWidth)
const screenHeigth = ref(window.innerHeight)
  
const  onResize=()=> {
    screenWidth.value = window.innerWidth;
    screenHeigth.value = window.innerHeight;
  }

onMounted(async () => {
	QueryDate.value = dateFormat(new Date(), 'YYYY-MM-DD') 
	window.addEventListener("resize", onResize);
})
onUnmounted(() => {
    window.removeEventListener("resize", onResize);
  });

watch(screenHeigth, (newValue, oldValue) => {
	TableHeight.value = (document.documentElement.clientHeight-300).toString()
}) 

</script>

<style scoped>
.dialog-footer button:first-child {
	margin-right: 10px;
}

</style>

  • 11
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值