使用react-virtualized中的AutoSIzer

以下是我的代码

import * as React from "react";
import { Component } from 'react';
import { List,AutoSizer,CellMeasurer, CellMeasurerCache} from 'react-virtualized';
import 'react-virtualized/styles.css';

const list = [
  'oneoneoneoneoneoeneoeneoenoeoneoeen',
  'oneoneoneoneoneoeneoeneoenoeoneoeen',
  'oneoneoneoneoneoeneoeneoenoeoneoeen',
  'oneoneoneoneoneoeneoeneoenoeoneoeen','oneoneoneoneoneoeneoeneoenoeoneoeen',
  'oneoneoneoneoneoeneoeneoenoeoneoeen',
  'oneoneoneoneoneoeneoeneoenoeoneoeen',
  'oneoneoneoneoneoeneoeneoenoeoneoeen',
  'oneoneoneoneoneoeneoeneoenoeoneoeen',
  'oneoneoneoneoneoeneoeneoenoeoneoeen',
  'oneoneoneoneoneoeneoeneoenoeoneoeen',
  'oneoneoneoneoneoeneoeneoenoeoneoeen',
  'oneoneoneoneoneoeneoeneoenoeoneoeen','oneoneoneoneoneoeneoeneoenoeoneoeen',
  'oneoneoneoneoneoeneoeneoenoeoneoeen',
  'oneoneoneoneoneoeneoeneoenoeoneoeen',
  'oneoneoneoneoneoeneoeneoenoeoneoeen','oneoneoneoneoneoeneoeneoenoeoneoeen',
  'oneoneoneoneoneoeneoeneoenoeoneoeen',
  'oneoneoneoneoneoeneoeneoenoeoneoeen',
  'oneoneoneoneoneoeneoeneoenoeoneoeen',
  'oneoneoneoneoneoeneoeneoenoeoneoeen',
  'oneoneoneoneoneoeneoeneoenoeoneoeen',
  'oneoneoneoneoneoeneoeneoenoeoneoeen',
  'oneoneoneoneoneoeneoeneoenoeoneoeen',
  'oneoneoneoneoneoeneoeneoenoeoneoeen','oneoneoneoneoneoeneoeneoenoeoneoeen',

]
function rowRenderer ({ key, index, style}) {
  return (
    <div
      key={key}
      style={style}
    >
      {list[index]}
    </div>
  )
}
export default class App extends Component{
  render(){
    return (
      <AutoSizer style={{height:'400px',width:'200px', resize:'both',overflow:'auto' }}>
    {({ height, width }) => (
      <List
        height={height}
        rowCount={list.length}
        rowHeight={20}
        rowRenderer={rowRenderer}
        width={width}
      />
    )}
  </AutoSizer>
    )
  }
}

但是在页面上显示改变大小,List的内容并没有铺满autosizer

clipboard.png

clipboard.png

阅读 4.7k
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题