vue3+ts+vite使用ResizeObserver API进行页面检测解决pc和移动端分为2个项目
let resizeObserver: ResizeObserver | null = null;
onMounted(() => {
//判断尺寸少于1200进行强制跳转到移动端的官网
if (document.body.clientWidth < 1200) {
window.location.replace("");
}
// ✅ 实时监听宽度变化
resizeObserver = new ResizeObserver((entries) => {
const width = entries[0].contentRect.width;
if (width < 1200) {
// ✅ 强制跳转,清除当前路由历史
window.location.replace("");
}
});
resizeObserver.observe(document.body);
});
onBeforeUnmount(() => {
resizeObserver?.disconnect();
});