讲一下vueuse的useBreakpoints响应式获取

302 阅读1分钟

useBreakpoints 是 VueUse 库提供的一个响应式断点工具函数,用于检测和响应屏幕尺寸的变化。

在代码中:

const breakpoints = useBreakpoints(breakpointsTailwind);
const isMobile = breakpoints.smaller('sm');

这里使用了 Tailwind CSS 的断点配置 breakpointsTailwind,它的默认值是:

{
  'sm': '640px',
  'md': '768px',
  'lg': '1024px',
  'xl': '1280px',
  '2xl': '1536px'
}

breakpoints.smaller('sm') 会返回一个响应式的布尔值,当屏幕宽度小于 640px 时为 true,表示当前是移动设备视图。

这个功能在代码中主要用于:

  1. 检测是否为移动设备
  2. 根据设备类型自动调整布局
    • 在移动设备时自动折叠侧边栏
    • 切换到垂直布局模式
    • 保存切换前的布局设置,以便在返回桌面视图时恢复

代码

import { breakpointsTailwind, useBreakpoints } from '@vueuse/core';

const breakpoints = useBreakpoints(breakpointsTailwind);

/** Is mobile layout */
const isMobile = breakpoints.smaller('sm');

可以在 VueUse 文档 中查看更多用法。