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
相关推荐
持梦远方1 小时前
重生之我拿捏Linux——《三、shell脚本使用》
前端·chrome
行走在顶尖2 小时前
代码截断运行逻辑
前端
一枚前端小能手2 小时前
「周更第8期」实用JS库推荐:decimal.j
前端·javascript
草莓熊Lotso2 小时前
《C++ Web 自动化测试实战:常用函数全解析与场景化应用指南》
前端·c++·python·dubbo
Tech_Lin2 小时前
JavaScript Date时间对象的常用操作方法总结
前端·javascript
温宇飞2 小时前
JavaScript 异常处理
前端
小岛前端2 小时前
🔥Vue3 移动端组件精选!满足各种场景!
前端·vue.js·微信小程序
用户1510581047432 小时前
带leading和trailing的防抖和节流
前端
IT小哥哥呀2 小时前
论文见解:REACT:在语言模型中协同推理和行动
前端·人工智能·react.js·语言模型
一枚前端小能手2 小时前
🚫 请求取消还在用flag?AbortController让你的异步操作更优雅
前端·javascript