首页 > 其他分享 >antd table 滚动到指定行方法

antd table 滚动到指定行方法

时间:2024-06-18 12:00:42浏览次数:22  
标签:滚动 scrollIntoView 一行 ele className table antd id

查了Ai 给的方法是tableRef.current.scrollToRow(0);

但是实际上用地antd3 压根没有这个方法。

分享一下我自己想的一个简答的办法。

1、需要定位的行要有唯一的标识 例如id。

let data = [
  {
    id: 1
  },
  {
    id: 2
  },
  {
    id: 3
  },
]

 这个id是为了方便找到所在行的位置。

2、在写Table 的Columns的时候 给这一行的某个字段(如果是id这字段更好)加上类名

className,例如:
{
      title: '行政区',
      dataIndex: 'id',
      align: 'left',
      width: 200,
      className: `th-center`,
      onCell: (record) => {
        return {
          className: `table-title d-${record.id}`,
        }
      },
      render: (text, record) => {
        return text
      }
}

最主要的就是onCell 这里,这个可以拿到这一行的信息 return 的className中 加上id类名,如果id是纯数字这种的建议前面加上一个字母,方便下面获取类名。

3、在需要滚动到某一行的地方使用下面代码:

      let ele = document.querySelector(`.d-${id}`)
      if (ele) {
        ele.scrollIntoView()
      }

这里应该就明白上面为什么要加类名了。就是通过获取唯一的dom ,再通过dom自带的方法scrollIntoView() 将该行滚动到视口处。

scrollIntoView方法里面有一些配置,可以方便调节滚动的位置什么的。例如:

scrollIntoView({behavior: 'smooth', block: 'start'}); behavior:滚动方式smooth就是平滑滚动, block是滚动的位置,start就是开头。 具体用法自行百度。

4、这个方法有一定的缺陷就是,这一行必须是渲染出来的,这一行必须是可以看到的。例如使用的折叠行的话,dom没有渲染出来,就会找不到这一行,不过可以事先展开这一行,渲染出来就可了。

标签:滚动,scrollIntoView,一行,ele,className,table,antd,id
From: https://blog.csdn.net/weixin_45125941/article/details/139768957

相关文章

  • stable-diffusion-3-medium 大模型下载地址
    由于huggingface.co下载速度不佳,放在夸克网盘上了:https://pan.quark.cn/s/6ab1885c2e51 有条件的可以从huggingface下载:https://huggingface.co/stabilityai/stable-diffusion-3-medium/tree/main StableDiffusion3Medium是基于OpenAI的扩散模型理论基础之上发展的......
  • el-table 嵌套
    <el-tableborder><el-table-columnwidth="150"><el-table-columnlabel=""><el-table-columnlabel="12"><el-table-columnlabel=""></el-table-column></el-table-column><......
  • 欢迎 Stable Diffusion 3 加入 Diffusers
    作为StabilityAI的StableDiffusion家族最新的模型,StableDiffusion3(SD3)现已登陆HuggingFaceHub,并且可用在......
  • 一行代码实现鼠标横向滚动
    ......
  • React中AntDesign upload组件 自定义请求将多个上传请求合并成一个并
    接口文档核心代码constImportPictureUpload=()=>{const[fileList,setFileList]=useState([])constonBeforeUpload=(file:any,fileList:any)=>{setFileList(fileList)returnfalse;}useEffect(()=>{if(......
  • Windows11系统Win32_EncryptableVolume.dll文件丢失问题
    其实很多用户玩单机游戏或者安装软件的时候就出现过这种问题,如果是新手第一时间会认为是软件或游戏出错了,其实并不是这样,其主要原因就是你电脑系统的该dll文件丢失了或没有安装一些系统软件平台所需要的动态链接库,这时你可以下载这个Win32_EncryptableVolume.dll文件(挑选合适......
  • Midjourney和stable diffusion到底有什么区别?要怎么选?
    前言目前AIGC领域里最强的两款软件,Midjourney(MJ)和stablediffusion(SD)到底有什么区别?我们应该怎么选择呢?这是很多新手朋友经常问的问题,这篇文章对此问题专门进行解释说明。视频版在aigc界的地位MJ和SD在aigc界都算是“顶流”的存在。基本上没有能与之抗衡的其他主流产品......
  • 这份 Stable diffusion 提示词攻略,记得收好了!
    大家好,今天给大家分享的是关于Stablediffusion提示词的基础和进阶语法,为什么有必要了解这个呢?首先是提示词对出图效果影响很大,了解提示词的用法有助于我们写出更优秀的提示词;其次就是我们可能会去C站拷贝别人的提示词,虽然直接拷贝过来也能得到不错的效果,但这样只会“知其......
  • Stable Diffusion3 开源!一文教你玩转 Stable Diffusion3
    节前,我们组织了一场算法岗技术&面试讨论会,邀请了一些互联网大厂朋友、今年参加社招和校招面试的同学。针对大模型技术趋势、大模型落地项目经验分享、新手如何入门算法岗、该如何准备面试攻略、面试常考点等热门话题进行了深入的讨论。汇总合集:《大模型面试宝典》(2024版......
  • tableau如何求月度复购率
    月复购率=当月购买多次的人数/当月购买人数参考文档:https://help.fanruan.com/finebi/doc-view-1264.html新建计算字段:月内购买次数{INCLUDE[客户名称]:COUNTD([订单id])}新建计算字段:月内购买人数新建计算字段:月内重复购买人数{INCLUDE:SUM(IF[月内购买次数]>=2THE......