方法1: CSSを使用したスクロール可能なリスト まず、CSSを使用してスクロール可能なリストを作成する方法を見てみましょう。
import React from 'react';
import './ScrollableList.css';
const ScrollableList = () => {
return (
<div className="scrollable-list">
<ul>
{Array.from({ length: 100 }, (_, index) => (
<li key={index}>Item {index}</li>
))}
</ul>
</div>
);
};
export default ScrollableList;
上記の例では、ScrollableList
コンポーネント内にscrollable-list
というCSSクラスを持つdiv
要素があります。このクラスには、高さやオーバーフローなどのスクロールに関連するスタイルが含まれています。ul
要素内には表示するリストアイテムがあります。この例では、100個のアイテムが表示されます。
次に、CSSファイル(ScrollableList.css)を作成し、スクロールに関連するスタイルを追加します。
.scrollable-list {
height: 300px;
overflow: auto;
}
上記のCSSでは、scrollable-list
クラスの要素の高さを300ピクセルに設定し、必要に応じてスクロールバーを表示します。
方法2: Reactライブラリを使用したスクロール可能なリスト
もう一つの方法は、サードパーティのReactライブラリを使用することです。例として、react-virtualized
ライブラリを使用してスクロール可能なリストを作成する方法を見てみましょう。
まず、react-virtualized
ライブラリをインストールします。
npm install react-virtualized
次に、以下のようにコードを記述します。
import React from 'react';
import { List } from 'react-virtualized';
const ScrollableList = () => {
const rowRenderer = ({ index, key, style }) => (
<div key={key} style={style}>Item {index}</div>
);
return (
<List
rowCount={100}
rowHeight={20}
width={300}
height={300}
rowRenderer={rowRenderer}
/>
);
};
export default ScrollableList;
上記の例では、react-virtualized
ライブラリのList
コンポーネントを使用しています。rowCount
プロパティには表示するアイテムの総数を指定し、rowHeight
プロパティには各アイテムの高さを指定します。width
とheight
プロパティにはリストの幅と高さを指定します。rowRenderer
プロパティには各行の描画方法を指定します。