antd Drawer 实现宽度拖拽

ts 复制代码
import react from 'react '
const App = () => {
  const onmousedown = () => {
    let isDown = false
    isDown = true
    window.onmouseup = () => {
      isDown = false

      window.onmousemove = null
    }
    window.onmousemove = (e: any) => {
      if (isDown === false) {
        return
      }
      ;(document && document.getElementById('line')?.style?.left) ?? '0px'

      const d: any = document.getElementsByClassName('ant-drawer-content-wrapper')[0]
      const handle = document.body.clientWidth - e.clientX
      if (handle > document.body.clientWidth) {
        d.style.width = document.body.clientWidth + 'px'
        return
      }
      d.style.width = handle + 'px'
    }
  }
  return (
    <Drawer title="查看详情" open={open} placement="right" onClose={onClose} width="800px">
      <div id="line" onMouseDown={onmousedown} className="line"></div>
      <UserMenu />
    </Drawer>
  )
}

export default APP
相关推荐
POLITE315 小时前
Leetcode 42.接雨水 JavaScript (Day 3)
javascript·算法·leetcode
京东零售技术15 小时前
2025京东零售技术年度精选 | 技术干货篇(内含福利)
前端·javascript·后端
悦E佳15 小时前
资源&问题链接
前端
布列瑟农的星空16 小时前
2025年度总结——认真生活,快乐工作
前端·后端
点亮一颗LED(从入门到放弃)16 小时前
设备模型(10)
linux·服务器·前端
xingzhemengyou116 小时前
Python 有哪些定时器
前端·python
木西16 小时前
Gemini 3 最新版!Node.js 代理调用教程
前端·node.js·gemini
婷婷婷婷16 小时前
表格组件封装详解(含完整代码)
前端
前端Hardy16 小时前
祝大家 2026 年新年快乐,代码无 bug,需求一次过
javascript·css·html
晴虹16 小时前
lecen:一个更好的开源可视化系统搭建项目--页面设计器(表单设计器)--全低代码|所见即所得|利用可视化设计器构建你的应用系统-做一个懂你的人
前端·后端·低代码