vue3检测是手机还是pc端,监测视图窗口变化

1.超小屏幕(手机) 768px以下

2.小屏设备(平板) 768px-992px

3.中等屏幕(旧式电脑) 992px-1200px

4.大屏设备(现代电脑) 1200px以上

TypeScript 复制代码
<script setup name="welcome">
import { onMounted, ref } from 'vue'

const screenWidth = ref(document.documentElement.clientWidth)
const isPhone = ref(screenWidth.value < 993) // 小于993视为平板及手机

onMounted(() => {
  window.addEventListener('resize', () => {
    screenWidth.value = document.body.offsetWidth
    isPhone.value = document.body.offsetWidth < 993 // 小于993视为平板及手机
})

const nextHandle = () => {
  window.location.href = isPhone.value ? 'https://www.baidu.com/' : 'https://element-plus.gitee.io/zh-CN/component/'
}
</script>
相关推荐
_AaronWong6 分钟前
Vue3+Element Plus 通用表格组件封装与使用实践
前端·javascript·vue.js
前端西瓜哥6 分钟前
图形编辑器开发:文字排版如何实现自动换行?
前端
代码煮茶8 分钟前
JS 异步编程实战 | 从回调地狱到 Promise/Async/Await(附代码 + 面试题)
javascript·面试
全栈老石27 分钟前
手写一个无限画布 #3:如何在Canvas 层上建立事件体系
前端·javascript·canvas
晴殇i35 分钟前
BroadcastChannel:浏览器原生跨标签页通信
前端·面试
csdn飘逸飘逸39 分钟前
Autojs基础-device(设备)
javascript
DeathGhost39 分钟前
分享URL地址到微信朋友圈没有缩略图?
前端·html
csdn飘逸飘逸40 分钟前
Autojs基础-文件系统(files)
javascript
MrBread40 分钟前
微任务链式派生阻塞渲染
前端·debug
wuhen_n42 分钟前
patch算法:新旧节点的比对与更新
前端·javascript·vue.js