在goods-list.vue页面销毁时移除 resize 事件监听器

Signed-off-by: luoyangxin <835168276@qq.com>
This commit is contained in:
luoyangxin
2025-04-14 02:23:17 +00:00
committed by Gitee
parent 51caeb1ad1
commit 7bad13fc23

View File

@@ -495,32 +495,40 @@
function camelToUnderscore(str) {
return str.replace(/([A-Z])/g, '_$1').toLowerCase();
}
// 动态设置表格高度
const yHeight = ref(0);
onMounted(() => {
resetGetHeight();
});
function resetGetHeight() {
// 搜索部分高度
let doc = document.querySelector('.ant-form');
// 按钮部分高度
let btn = document.querySelector('.smart-table-btn-block');
// 表格头高度
let tableCell = document.querySelector('.ant-table-cell');
// 分页高度
let page = document.querySelector('.smart-query-table-page');
// 内容区总高度
let box = document.querySelector('.admin-content');
setTimeout(() => {
// 搜索部分高度
let doc = document.querySelector('.ant-form');
// 按钮部分高度
let btn = document.querySelector('.smart-table-btn-block');
// 表格头高度
let tableCell = document.querySelector('.ant-table-cell');
// 分页高度
let page = document.querySelector('.smart-query-table-page');
// 内容区总高度
let box = document.querySelector('.admin-content');
setTimeout(() => {
let dueHeight = doc.offsetHeight + 10 + 24 + btn.offsetHeight + 15 + tableCell.offsetHeight + page.offsetHeight + 20;
yHeight.value = box.offsetHeight - dueHeight;
}, 100);
}
window.addEventListener(
'resize',
_.throttle(() => {
resetGetHeight();
}, 1000)
);
// 定义一个变量来存储节流后的回调函数
let throttledResizeHandler;
onMounted(() => {
resetGetHeight();
throttledResizeHandler = _.throttle(() => {
resetGetHeight();
}, 1000);
window.addEventListener('resize', throttledResizeHandler);
});
// 在组件销毁时移除 resize 事件监听器
onUnmounted(() => {
window.removeEventListener('resize', throttledResizeHandler);
});
</script>