反应虚拟化的粘性标题

Chr*_*ris 6 reactjs react-virtualized

List在react-virtualized中使用一个组件来渲染大量项目.在我的实现中,项目是分段的,我希望部分标题是粘性的,以便当用户向下滚动时当前部分保持可见.从本质上讲,我需要react-virtualized NOT来销毁部分标题,因为滚动位置会发生变化(但会继续破坏其他项目).现在有办法做到这一点吗?只要他们不是太疯狂,我就会对黑客持开放态度.

mar*_*aos 6

我们与您有类似的要求 - 我们需要一个支持粘性标题的分区列表。我们无法使用react-virtualized Lists/Grids来实现这一点,所以我创建了支持粘性标题的https://github.com/marchaos/react-virtualized-sticky-tree

请参阅此处的示例。


Mbr*_*vda 2

如果我正确理解您的问题,您希望在电子表格中添加粘性标题。您可以使用该ScrollSync组件来做到这一点,请查看demo/docs

这是文档中显示的示例:

import { Grid, List, ScrollSync } from 'react-virtualized'
import 'react-virtualized/styles.css'; // only needs to be imported once

function render (props) {
  return (
    <ScrollSync>
      {({ clientHeight, clientWidth, onScroll, scrollHeight, scrollLeft, scrollTop, scrollWidth }) => (
        <div className='Table'>
          <div className='LeftColumn'>
            <List
              scrollTop={scrollTop}
              {...props}
            />
          </div>
          <div className='RightColumn'>
            <Grid
              onScroll={onScroll}
              {...props}
            />
          </div>
        </div>
      )}
    </ScrollSync>
  )
}
Run Code Online (Sandbox Code Playgroud)