• はじめに このセクションでは、Reactのリストとキーの章の一部としてリストのキーについて探ります。キーは、リスト内のどのアイテムが変更されたり、追加されたり、削除されたりしたかをReactに識別するのに重要です。GeekとGalの会話に参加して、リストでキーを使う方法についてもっと学びましょう!
Gal Normal

Reactでリストをレンダリングするとき、リスト内の各アイテムに一意のキーを使うことが重要だよ!

Geek Curious

キーって何でそんなに重要なの?

Gal Happy

いい質問ね!キーは、どのアイテムが変更されたり、追加されたり、削除されたりしたかを識別することで、Reactがレンダリングを最適化するのを助けるの。大きなリストでもアプリが高速に動作するようにしてくれるのよ!

  • リストのキー
Gal Pleased

Reactコンポーネントでリストのアイテムにキーを割り当てる方法の例を見てね:

function TaskList({ tasks }) {
    return (
        <ul>
            {tasks.map((task) => (
                <li key={task.id}>{task.description}</li>
            ))}
        </ul>
    );
}
Geek Happy

なるほど!タスクのidプロパティを使って、各リストアイテムに一意のキーを割り当てるんだね。

Gal Happy

その通り!キーは、データからの一意の識別子(idなど)を使うべきだよ。インデックスをキーとして使うと、リストからアイテムが追加されたり削除されたりしたときにパフォーマンスの問題やバグが発生することがあるから、避けてね。

  • おもしろい例
Geek Curious

リストのキーを使ったおもしろい例を教えてもらえる?

Gal Pleased

もちろん!爆笑のジョークのリストをレンダリングして、それぞれのジョークに一意のキーを割り当ててみよう!

const jokes = [
    { id: 1, joke: 'なんでニワトリは交霊会に行ったの? あちら側に行くために!' },
    { id: 2, joke: 'なんで科学者は原子を信用しないの? だって全部作り話だもん!' },
    { id: 3, joke: 'にせもののスパゲッティってなんて言うの? インポスタ!' },
];

function JokeList() {
    return (
        <ul>
            {jokes.map((joke) => (
                <li key={joke.id}>{joke.joke} 😂</li>
            ))}
        </ul>
    );
}
Geek Happy

ハハ、それはおもしろい!リストの各アイテムに一意のキーを使って、面白いジョークのリストをレンダリングしたね。

Gal Happy

そうなの!Reactでリストをレンダリングするときは、いつも一意のキーを使って、最適なパフォーマンスを確保し、潜在的なバグを回避しましょうね!

  • おわりに リストのキーは、Reactでリストのレンダリングを最適化する上で重要な役割を果たします。リスト内の各アイテムに一意のキーを割り当てて、Reactがアイテムの変更、追加、または削除を識別できるようにしましょう。そうすることで、アプリを効率的でメンテナンスしやすく保つことができます!😄